์๋ฐ(JAVA)
๋ฐฐ์ด์ ๊ฑฐ์ ๋ชจ๋ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์ ๊ณตํต์ ์ผ๋ก ์กด์ฌํ๋ ์๋ฃํ์ด๋ค
์ธ์ด์ ๋ฐ๋ผ ๊ฐ์ ํน์ฑ์ ๋ง๊ฒ ์กฐ๊ธ์ฉ ์ฐจ์ด๊ฐ ์๋๋ฐ
์๋ฐ์ ๋ฐฐ์ด์ ์ด๋ค ์ฐจ์ด๊ฐ ์๋์ง ์์๋ณด์
๋ฐฐ์ด(Array) ์ด๋?
๋ฐฐ์ด์ ๊ฐ์ ํ์ ์ ์ฌ๋ฌ ๋ณ์๋ฅผ ํ๋์ ๋ฌถ์์ผ๋ก ๋ค๋ฃจ๋ ๊ฒ
์๋ฅผ๋ค์ด ํ์ 10000๋ช ์ ์ ์๋ฅผ ๋ณ์์ ์ ์ฅํด์ผ ํ๋ ๊ฒฝ์ฐ ๋ฐฐ์ด์ด ์๋ค๋ฉด
10000๊ฐ์ int ํ์ ์ ๋ณ์๋ฅผ ์ ์ธ์ ํด์ฃผ์ด์ผ ํ๋ ๋๊ฐํ ์ํฉ์ด ๋ฒ์ด์ง๋ค.
1 2 3 4 5 6 | int score1; int score2; ... ... ... int score10000; | cs |
์ด๋ฐ ๋ฒ๊ฑฐ๋ก์์ ๋ฐฐ์ด์ ์ด์ฉํ๋ฉด ํ ์ค๋ก ์ ์ธํ ์ ์๋ค
1 | int[] score = new int[10000] | cs |
๋ฐฐ์ด์ ์ ์ธ๊ณผ ์์ฑ
์๋ฐ์ ๋ฐฐ์ด์ ์ ์ธ๊ณผ ์์ฑ์ด ๋๋์ด์ ธ ์๋๋ฐ
์ ์ธ์ ์ฐธ์กฐ๋ณ์๋ฅผ ์ํ ๊ณต๊ฐ์ ๋ง๋๋ ๊ฒ์ด๊ณ ์์ฑ์ ํด์ผ๋ง ๋น๋ก์ ๊ฐ์ ์ ์ฅํ ์ ์๋ ๊ณต๊ฐ์ด ๋ง๋ค์ด์ง๋ค
1 2 3 | int[] score; // int ํ์
์ ๋ฐฐ์ด์ ๋ค๋ฃจ๊ธฐ ์ํ ์ฐธ์กฐ๋ณ์ score ์ ์ธ // int score[]; // ์ด๋ ๊ฒ๋ ๊ฐ๋ฅ score = new int[5] // ๋ฐฐ์ด์ ์์ฑ (์ค์ ์ ์ฅ๊ณต๊ฐ์ ์์ฑ) | cs |
๋ณดํต์ ๋ค์๊ณผ ๊ฐ์ด ๊ฐ๋ตํ ํ ์ค๋ก ์ ์ธ๊ณผ ์์ฑ์ ๋์์ ํ๋ค
1 2 3 | int[] score = new int[5]; // ๊ธธ์ด๊ฐ 5์ธ int ํ์
๋ฐฐ์ด int[] test = new int[0]; // ๊ธธ์ด๊ฐ 0์ธ ๋ฐฐ์ด๋ ์์ฑ | cs |
๊ธธ์ด๊ฐ 0์ธ ๋ฐฐ์ด์ ํ์ค์ ์๋์ง๋ง ๋ํ ๋ฒค๋๋ค์ ๊ฑฐ์ ๋ค ์ง์ํ๋ค๊ณ ํ๋ค
๋ณดํต์ ์ ๋ ๊ฒ ๋ ๋ฆฝ์ ์ผ๋ก ์ฌ์ฉ๋๋ ๊ฒฝ์ฐ๋ ๋๋ฌผ๊ณ ๊ตฌ์กฐ์ฒด๋ ํด๋์ค ์์์ ๋ฉค๋ฒ๋ณ์๋ก ์์ฑ์ด ๋์ด ํ์ฉ๋
์๋ฐ์ ์ ์์์๋ for๋ฌธ์ ๋๋ฆด ๋ '๋ฐฐ์ด์ด๋ฆ.length'๋ฅผ ํตํด ์กฐ๊ฑด์์ ๊ฑธ์ด์ฃผ๋๋ฐ
๋ฐฐ์ด์ ๊ธธ์ด๊ฐ null์ธ ๊ฒฝ์ฐ๋ ์๋ฌ๊ฐ ๋ฐ์ํ์ง๋ง 0์ธ๊ฒฝ์ฐ๋ ๋์ง ์๋๊ฒ์ผ๋ก
์๋ฌ๋ฅผ ๋ฐ์์ํค์ง์๊ณ ๋์ด๊ฐ๊ฒ ํ๊ธฐ ์ํ ์ฉ๋๋ก๋ ์ฌ์ฉ์ด ๋๋ค๊ณ ํ๋ค
ํ์ง๋ง ๋นํ์ค์ด๊ธฐ๋ ํ๊ณ ์ปดํ์ผ ์์ ๊ฒฝ๊ณ ๋ฅผ ์ฃผ๊ธฐ๋ ํ๊ณ ์ฌ์ฉํ ๋์ ์ฃผ์ํด์ ์ฌ์ฉํด์ผ ํ๊ธฐ ๋๋ฌธ์ ๊ผญ ํ์ํ ๊ฒฝ์ฐ๊ฐ ์๋๋ผ๋ฉด ์ฐ์ง ์๋๊ฒ์ด ์ ์ ๊ฑด๊ฐ์ ์ข์ ๋ฏ ์ถ๋ค
๋ฐฐ์ด์ ๊ธธ์ด์ ์ธ๋ฑ์ค
๋ฐฐ์ด์ ๊ธธ์ด๋ ์์์ ์(0ํฌํจ)์ด์ด์ผ๋ง ํ๊ณ JVM์ด ๊ด๋ฆฌํ๋ค
๊ธธ์ด๋ฅผ ์ป๋ ๋ฐฉ๋ฒ์ ๋ฐฐ์ด์ด๋ฆ.length๋ก ์์๋ก ๋์ด์๋ค, ์ฆ ๋ณ๊ฒฝํ ์ ์๋ค
๋ฐ๋ณต๋ฌธ์ ์ฌ์ฉํ์ฌ ๋ฐฐ์ด์ ์ ๊ทผํ ๊ฒฝ์ฐ ํ์๋ฅผ ์ง์ ํ ๋ ๋ฐฐ์ด์ ๊ธธ์ด๋ฅผ ์ด์ฉํ๋ฉด ์ข๋ค
1 2 3 | for (int i=0; i < score.length; i++) { System.out.println(score[i]); } | cs |
์ด๋ ๊ฒ ํ๋ฉด ๋ฐฐ์ด์ ์์ฑ ์ ๊ธธ์ด๋ฅผ ์์ ํด๋ for๋ฌธ์ ์กฐ๊ฑด๋ฌธ์ ๋ณ๊ฒฝํ์ง ์์๋ ๋๊ธฐ ๋๋ฌธ์
์ค์๋ฅผ ์ค์ฌ ์์ธ ๋ฐ์์ ์ค์ฌ์ค๋ค
์ฐธ๊ณ ๋ก ์์ for๋ฌธ์ฒ๋ผ ๋ฐฐ์ด์ length๋ฅผ ์กฐ๊ฑด์์์ ์ง์ ์ ๊ทผํ๋๊ฒ๋ณด๋ค ๋ค์ ์ฝ๋์ฒ๋ผ ์ง์ญ๋ณ์๋ก ์บ์ฑํ ๋ค์์ ์ง์ญ๋ณ์๋ฅผ ํตํด ์กฐ๊ฑด์ ๊ฑธ์ด์ฃผ๋ฉด ์ฑ๋ฅ์ด ์กฐ๊ธ ๋ ๋ซ๋ค๊ณ ํ๋ค
1 2 3 4 5 | int len = score.length; for (int i=0; i < len; i++) { System.out.println(score[i]); } | cs |
๋ค์์ผ๋ก ์ฑ๋ฅ์ด ๋ ์ข์ ๊ฒ์ JDK 5 ๋ถํฐ ์ง์๋๋ ํฅ์๋ for๋ฌธ์ผ๋ก ๋ค์๊ณผ ๊ฐ์ด ์ฌ์ฉํ๋ค
1 2 3 | for (int i : score) { System.out.println(i); } | cs |
๋ฌผ๋ก ํ๋์จ์ด๊ฐ ์ข์์ง ์ธ์์ด๊ธฐ ๋๋ฌธ์ ๊ทธ ์ฐจ์ด๋ 100๋ง๊ฐ์ ๋ฐ์ดํฐ ์ดํ๋ก๋ ๋ฏธ๋นํ์ง๋ง ๊ทธ๋๋ ์ฝ๋ฉ์คํ์ผ์ ์ข์ ๋ฐฉํฅ์ผ๋ก ์ต๊ด์ ๋ค์ด๋๊ฒ์ด ์ข๋ค๊ณ ์๊ฐํ๋ค
์ธ๋ฑ์ค(index)๋ ๋ฐฐ์ด์ ์์๋ง๋ค ๋ถ์ฌ์ง ์ผ๋ จ๋ฒํธ๋ก ๊ฐ ์์๋ฅผ ๊ตฌ๋ณํ๋๋ฐ ์ฌ์ฉ๋๋ค
์ธ๋ฑ์ค์ ๋ฒ์๋ 0๋ถํฐ (๋ฐฐ์ด๊ธธ์ด-1) ๊น์ง๋ค
์๋ฅผ๋ค์ด ์์์ ์ ์ธํ intํ์ ๋ฐฐ์ด์ ๊ธธ์ด๊ฐ 5์ด๋ฏ๋ก ์ธ๋ฑ์ค๋ 0๋ถํฐ 4๊น์ง, ์ฆ 0, 1, 2, 3, 4๊ฐ ๋๋ค
์ ๊ทผ ๋ฐฉ๋ฒ์ ๋ณ์์ ์ด๋ฆ ๋์ '๋ฐฐ์ด์ด๋ฆ[์ธ๋ฑ์ค]'๋ฅผ ์ฌ์ฉํ๋ค
1 2 3 4 5 | score[0] = 0; score[1] = 10; score[2] = 20; score[3] = 30; score[4] = 40; | cs |
๋ฐฐ์ด์ ๋ ๋ค๋ฅธ ์ฅ์ ์ index๋ก ์์ ๋์ ๋ณ์๋ฅผ ์ฌ์ฉํ ์ ์๋ค๋ ์ ์ธ๋ฐ ๋ค์๊ณผ ๊ฐ์ด ๋ฐ๋ณต๋ฌธ๊ณผ ๊ฐ์ด ํ์ฉํ๋ค
1 2 3 | for (int i=0; i < 5; i++) { score[i] = i * 10; } | cs |
๋ง์ผ ์ธ๋ฑ์ค๊ฐ ์์์ผ๋ก ๋์ด ์์ผ๋ฉด ๊ทธ ์์์ด ๋จผ์ ๊ณ์ฐ๋๋ค. ๊ณ์ฐ์ด ๋์ผ ๋ช ๋ฒ์งธ ์์๋ฅผ ์ ๊ทผํ๋์ง ์ ์ ์๊ธฐ ๋๋ฌธ์ด๋ค
1 2 3 | int tmp = score[i+1]; -> int tmp = score[2+1]; -> int tmp = score[3]; | cs |
๋ฐฐ์ด์ ์ฌ์ฉํ ๋ ๊ฐ์ฅ ๋ง์ด ๋ณผ ์ ์๋ ์์ธ๋ก ArrayIndexoOutOfBoundsException์ด ์๋ค
์ด๊ฒ์ ๋ฐฐ์ด์ ๊ธธ์ด๋ฅผ ๋ฒ์ด๋ ์ธ๋ฑ์ค๋ก ์ ๊ทผํ ๋ ๋์ค๋ ์์ธ์ธ๋ฐ ์ปดํ์ผ๋ฌ๋ ์ด๋ฌํ ์ค์๋ฅผ ์ก์์ฃผ์ง ๋ชปํ๋ค
์๋ํ๋ฉด ๋ฐฐ์ด์ index๋ ๋ณ์๋ก ๋์ด ์๋ ๊ฒฝ์ฐ๊ฐ ๋ง์๋ฐ ๋ณ์๋ ์คํ ์์ ๋์ ๋๋ฏ๋ก ์ปดํ์ผ๋ฌ๋ ์ด ๊ฐ์ ๋ฒ์๋ฅผ ํ์ธํ ์ ์๊ธฐ ๋๋ฌธ์ด๋ค
๋ฐฐ์ด์ ์ด๊ธฐํ
์ด๊ธฐํ ํ๋ ๋ฐฉ์์ ๋ค์ 3๊ฐ์ง ๋ฐฉ์์ด ์๋ค
1 2 3 4 | int[] score = new int[3]; score[0] = 50; score[1] = 60; score[2] = 70; | cs |
1 2 3 4 5 | int[] score = new score[3]; for (int i=0; i < score.length; i++) { score[i] = i * 10 + 50; } | cs |
1 | int[] score = new int[] {50, 60, 70}; | cs |
1 | int[] score = {50, 60, 70}; |
์ด ์ค for๋ฌธ์ ์ด์ฉํ ์ด๊ธฐํ ๋ฐฉ์์ ๊ทธ ๊ฐ์ด ๊ท์น์ด ์์ด์ผ ์ํ๋ ๊ฐ์ ์ด๊ธฐํ ๊ฐ๋ฅํ๋ค
๋ณดํต์ 3๋ฒ์งธ ํน์ 4๋ฒ์งธ ๋ฐฉ์์ผ๋ก ๊ฐ๋จํ๊ฒ ์์ฑ๊ณผ ์ด๊ธฐํ๋ฅผ ๋์์ ํ๋ค
4๋ฒ์งธ ๋ฐฉ์์ฒ๋ผ ์ด๊ธฐํ๋ฅผ ํ ๋๋ ์ฃผ์๊ฐ ํ์ํ๋ค ์๋ํ๋ฉด ์ ์ธ๊ณผ ์์ฑ์ ๋ฐ๋ก ํ๋ ๊ฒฝ์ฐ์๋ new int[]๋ฅผ ์๋ตํ ์ ์๊ธฐ ๋๋ฌธ์ด๋ค
์ด๊ฒ์ ๋ฉ์๋๋ฅผ ํธ์ถํ ๋์๋ ๋ง์ฐฌ๊ฐ์ง์ด๋ค
1 2 3 4 5 | int add(int[] arr) { /* ๋ด์ฉ ์๋ต */ } int result = add(new int[] {50, 60, 70}); int result = add({100, 50, 90}); // ์๋ฌ ๋ฐ์ | cs |
๋ฐฐ์ด์ ์ถ๋ ฅ
๋ฐฐ์ด์ ์ถ๋ ฅ์ ๋ฐ๋ณต๋ฌธ์ ์ด์ฉํ์ฌ ์ถ๋ ฅํ ์๋ ์๊ณ ๋ฉ์๋๋ฅผ ํตํด์๋ ํ ์ ์๋ค
1 2 3 | for (int i =0; i < array.length; i++) { System.out.println(array[i]); } | cs |
1 | System.out.println(Arrays.toString(array)); | cs |
์์ธ์ ์ผ๋ก charํ์ ๋ฐฐ์ด์ธ ๊ฒฝ์ฐ ๋ฐฐ์ด๋ช ์ผ๋ก ์ถ๋ ฅ์ด ๊ฐ๋ฅํ๋ค
1 2 | char[] chArr = {'a', 'b', 'c', 'd'}; System.out.println(chArr); // abcd | cs |
๋ค๋ฅธ ํ์ ์ ๋ฐฐ์ด๋ช ์ผ๋ก ์ถ๋ ฅํ ๊ฒฝ์ฐ 'ํ์ @์ฃผ์'๊ฐ์ด ๋์จ๋ค
๋ฐฐ์ด์ ๋ณต์ฌ
๋ฐฐ์ด์ ๊ธธ์ด๋ ์์๊ฐ์ผ๋ก ํ ๋ฒ ์ง์ ํ๋ฉด ๋ณ๊ฒฝํ ์ ์๊ธฐ ๋๋ฌธ์ ๊ธธ์ด๋ฅผ ๋๋ ค์ผ ํ๋ ๊ฒฝ์ฐ
๋ ํฐ ๋ฐฐ์ด์ ์์ฑํ๊ณ ๋ณต์ฌํ๋ ๋ฐฉ๋ฒ์ผ๋ก ๋๋ฆฌ๋ ์ ๋ฐ์ ์๋ค
๋ฐฐ์ด์ ๋ณต์ฌํ๋ ๋ฐฉ๋ฒ์๋ 2๊ฐ์ง ๋ฐฉ๋ฒ์ผ๋ก for๋ฌธ์ ์ด์ฉํ๋ ๋ฐฉ๋ฒ๊ณผ ๋ฉ์๋๋ฅผ ์ด์ฉํ๋ ๋ฐฉ๋ฒ์ด ์๋ค
1 2 3 4 5 6 7 8 9 10 | int [] arr = new int[5]; ... int[] tmp = new int[arr.length * 2]; // ๊ธฐ์กด ๋ฐฐ์ด๋ณด๋ค ๊ธธ์ด๊ฐ 2๋ฐฐ์ธ ๋ฐฐ์ด ์์ฑ for (int i=0; i < arr.length; i++) { tmp[i] = arr[i]; // arr์ ๊ฐ์ tmp์ } arr = tmp; // ์ฐธ์กฐ๋ณ์ arr์ด ์๋ก์ด ๋ฐฐ์ด์ ๊ฐ๋ฆฌํค๊ฒ ํจ | cs |
์ด ๋ ๊ธฐ์กด์ arr์ด ๊ฐ๋ฆฌํค๋ ๊ธธ์ด๊ฐ 5์ธ ๋ฐฐ์ด์ ๋ ์ด์ ์ฐธ์กฐํ ์ ์๋ ๊ณต๊ฐ์ผ๋ก JVM์ ๊ฐ๋น์ง ์ปฌ๋ ํฐ์ ์ํด์ ์๋์ ์ผ๋ก ๋ฉ๋ชจ๋ฆฌ์์ ์ ๊ฑฐ๋๋ค
๋ค์์ ๋ฉ์๋๋ฅผ ์ด์ฉํ ๋ฐฉ๋ฒ์ด๋ค
1 2 3 4 5 6 7 8 | int [] arr = new int[5]; ... int[] tmp = new int[arr.length * 2]; // ๊ธฐ์กด ๋ฐฐ์ด๋ณด๋ค ๊ธธ์ด๊ฐ 2๋ฐฐ์ธ ๋ฐฐ์ด ์์ฑ System.arraycopy(arr, 0, tmp, 0, arr.length); // arr[0]์์ tmp[0]์ผ๋ก arr.length๊ฐ์ ๋ฐ์ดํฐ๋ฅผ arr = tmp; // ์ฐธ์กฐ๋ณ์ arr์ด ์๋ก์ด ๋ฐฐ์ด์ ๊ฐ๋ฆฌํค๊ฒ ํจ | cs |
arraycopy()๋ ์ง์ ๋ ๋ฒ์์ ๊ฐ๋ค์ ํ ๋ฒ์ ํต์งธ๋ก ๋ณต์ฌํ๋ค. for๋ฌธ๋ณด๋ค ํจ์ฌ ํจ์จ์ ์ด๋ค
์ด๊ฒ์ ๋ฐฐ์ด์ด ๊ฐ ์์๋ค์ด ์ฐ์์ ์ผ๋ก ์ ์ฅ๋์ด ์๋ค๋ ํน์ฑ ๋๋ฌธ์ ๊ฐ๋ฅํ ๊ฒ์ด๋ค
์ด๋๋ ์ญ์ ArrayIndexOutOfBoundsException ์์ธ๋ฅผ ๋ฐ์์ํค์ง ์๋๋ก ์ฃผ์ํด์ผ ํ๋ค
์์ ์์ ์ ๊ฝค ๋น์ฉ์ด ๋ง์ด ๋ค๊ธฐ ๋๋ฌธ์ ์ฒ์๋ถํฐ ๋ฐฐ์ด์ ๊ธธ์ด๋ฅผ ๋๋ํ๊ฒ ์ก์์ค์ ์์ ์์ ์ ํ์ง ์๋๋ก ํ๋๊ฒ์ด ๊ฐ์ฅ ์ข๋ค
๊ทธ๋ ๋ค๊ณ ๋๋ฌด ํฌ๊ฒ ์ก์ผ๋ฉด ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๋ญ๋นํ๊ฒ ๋๋ฏ๋ก ์ ์ ํ ๊ธธ์ด๋ก ์ก์์ฃผ๋ ๊ฒ์ด ์ค์ํ๋ค
๋ค์ฐจ์ ๋ฐฐ์ด
์ง๊ธ๊น์ง ์ ๋ฆฌํ ๋ด์ฉ์ ๋ฐฐ์ด์ 1์ฐจ์ ๋ฐฐ์ด์ด๋ค
2์ฐจ์ ์ด์์ ๋ฐฐ์ด, ์ฆ ๋ค์ฐจ์ ๋ฐฐ์ด์ ๋ฉ๋ชจ๋ฆฌ๊ฐ ์ฌ์ ์์ผ๋ฉด ๊ทธ ์ฐจ์์๋ ์ ํ์ด ์๋ค
(ํ์ง๋ง ๋ณดํต 1,2์ฐจ์์ ์ฌ์ฉํ๊ณ 3์ฐจ์๋ ๋ณดํต ์ ์ฐ์ง ์๋๋ค)
2์ฐจ์ ๋ฐฐ์ด์ ์ ์ธ์ ๋ค์๊ณผ ๊ฐ์ด []๋ฅผ ํ๋ ๋์ฐ๋ฉด ๋๋ค
1 2 | int[][] score; int score[][]; | cs |
4ํ 3์ด์ 2์ฐจ์ ๋ฐฐ์ด์ ์์ฑํ๋ ๊ฒฝ์ฐ๋ ๋ค์๊ณผ ๊ฐ์ด ํ๋ค
1 | score = new int[4][3]; | cs |
2์ฐจ์ ๋ฐฐ์ด์ ์ด๊ธฐํ
2์ฐจ์ ๋ฐฐ์ด๋ ๋๊ฐ์ ๋ฐฐ์ด์ด๋ค. 1์ฐจ์ ๋ฐฐ์ด๊ณผ ํฌ๊ฒ ๋ค๋ฅผ๊ฒ ์๋ค
๋ค๋ง, ๊ดํธ{}๋ก ์ด๊ธฐํ ํ๋ ๊ฒฝ์ฐ์๋ ํ๋ฒ ๋ ๊ดํธ๋ฅผ ๊ฐ์ธ์ฃผ๊ณ ํ๋ณ๋ก ','๋ก ๊ตฌ๋ถํ๋ค
1 2 3 | int[][] arr = new int[][]{ {1, 2, 3}, {1, 2, 3}, {1, 2, 3} }; int[][] arr = { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} }; | cs |
์ฐจ์์ด ์ปค์ง์๋ก ๊ฐ๋ ์ฑ์ด ๋จ์ด์ง๋๋ฐ 2์ฐจ์ ๋ฐฐ์ด์ ๊ฒฝ์ฐ ํ์ค๋ณด๋ค๋ ๋ค์๊ณผ ๊ฐ์ด ํ ๋ณ๋ก ์ค์ ๋๋์ด์ฃผ๋ฉด ๊ฐ๋ ์ฑ์ด ๋ ์ข๋ค
1 2 3 4 5 | int[][] arr = { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} }; | cs |
2์ฐจ์ ๋ฐฐ์ด์ ๋ฐฐ์ด์ ๋ฐฐ์ด๋ก ๊ตฌ์ฑ๋์ด ์๊ธฐ ๋๋ฌธ์ 2์ฐจ์ ๋ฐฐ์ด์ ๊ธธ์ด๋
๊ฐ์ง๊ณ ์๋ ๋ฐฐ์ด์ ๊ฐ์๋ฅผ ์๋ฏธํ๋ค. ์์ ๋ฐฐ์ด arr์ length๋ 3์ด ๋๋ค
๊ทธ ์์ arr[0]์ ๋ฐฐ์ด์ ๊ธธ์ด๋ ์์๋ฅผ 3๊ฐ ๊ฐ์ง๊ณ ์์ผ๋ฏ๋ก ์ญ์ 3์ด ๋๋ค
for๋ฌธ์ ์ด์ฉํด์ ์ด๊ธฐํํ๋ค๋ฉด ๋ค์๊ณผ ๊ฐ์ ๊ฒ์ด๋ค
1 2 3 4 5 | for (int i=0; i < arr.length; i++) { for (int j=0; j < arr[i].length; j++ { arr[i][j] = 10; } } | cs |
๊ฐ๋ณ ๋ฐฐ์ด
2์ฐจ์ ์ด์์ ๋ฐฐ์ด์ '๋ฐฐ์ด์ ๋ฐฐ์ด' ํํ๋ก ์ฒ๋ฆฌํ๊ธฐ ๋๋ฌธ์ ๋ณด๋ค ์์ ๋ก์ด ํํ์ ๋ฐฐ์ด์ ๊ตฌ์ฑํ ์ ์๋ค
๋ค์ฐจ์ ๋ฐฐ์ด์ ์์ฑํ ๋ ์ ์ฒด ๋ฐฐ์ด ์ฐจ์ ์ค ๋ง์ง๋ง ์ฐจ์์ ๊ธธ์ด๋ฅผ ์ง์ ํ์ง ์๊ณ ,
๋์ค์ ๊ฐ๊ฐ ๋ค๋ฅธ ๊ธธ์ด์ ๋ฐฐ์ด์ ์์ฑํจ์ผ๋ก์จ ๊ณ ์ ๋ ํํ๊ฐ ์๋ ์ ๋์ ์ธ ๊ฐ๋ณ ๋ฐฐ์ด์ ๊ตฌ์ฑํ ์ ์๋ค
1 | int[][] score = new int[5][3]; // 5ํ 3์ด์ 2์ฐจ์ ๋ฐฐ์ด ์์ฑ | cs |
์ ์ฝ๋๋ ๋ค์๊ณผ ๊ฐ์ด ํํ ํ ์ ์๋ค
1 2 3 4 5 6 7 | int[][] score = new int[5][]; score[0] = new int[3]; score[1] = new int[3]; score[2] = new int[3]; score[3] = new int[3]; score[4] = new int[3]; | cs |
์์ ์ฝ๋๋ฅผ ์กฐ๊ธ ์์ ํ๋ฉด ๊ฐ ํ๋ง๋ค ๋ค๋ฅธ ๊ธธ์ด์ ๋ฐฐ์ด์ ๊ฐ์ง 2์ฐจ์ ๋ฐฐ์ด์ ์์ฑํ ์ ์๋ค
1 2 3 4 5 6 7 | int[][] score = new int[5][]; score[0] = new int[3]; score[1] = new int[2]; score[2] = new int[4]; score[3] = new int[5]; score[4] = new int[1]; | cs |