2. ๋ฐฐ์—ด์˜ ์ƒ์„ฑ๊ณผ ์„ ์–ธ


  • ๋ฐฐ์—ด์˜ ์„ ์–ธ - ๋ฐฐ์—ด์„ ๋‹ค๋ฃจ๊ธฐ ์œ„ํ•œ ์ฐธ์กฐ๋ณ€์ˆ˜์˜ ์„ ์–ธ
ํƒ€์ž…[] ๋ณ€์ˆ˜์ด๋ฆ„;           // ๋ฐฐ์—ด์„ ์„ ์–ธ(๋ฐฐ์—ด์„ ๋‹ค๋ฃจ๊ธฐ ์œ„ํ•œ ์ฐธ์กฐ๋ณ€์ˆ˜ ์„ ์–ธ)
๋ณ€์ˆ˜์ด๋ฆ„ = new ํƒ€์ž…[๊ธธ์ด]; // ๋ฐฐ์—ด์„ ์ƒ์„ฑ(์‹ค์ œ ์ €์žฅ๊ณต๊ฐ„์„ ์ƒ์„ฑ)
int[] score;              // intํƒ€์ž…์˜ ๋ฐฐ์—ด์„ ๋‹ค๋ฃจ๊ธฐ ์œ„ํ•œ ์ฐธ์กฐ๋ณ€์ˆ˜ score์„ ์–ธ
score = new int[5];       // intํƒ€์ž…์˜ ๊ฐ’ 5๊ฐœ๋ฅผ ์ €์žฅํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฐ์—ด ์ƒ์„ฑ

4~5. ๋ฐฐ์—ด์˜ ๊ธธ์ด, ๋ฐฐ์—ด์˜ ์ดˆ๊ธฐํ™”


4. ๋ฐฐ์—ด์˜ ๊ธธ์ด

  • ๋ฐฐ์—ด์ด๋ฆ„.length - ๋ฐฐ์—ด์˜ ๊ธธ์ด(intํ˜• ์ƒ์ˆ˜)
int[] arr = new int[5]; // ๊ธธ์ด๊ฐ€ 5์ธ int๋ฐฐ์—ด
int tmp = arr.length;   // arr.length์˜ ๊ฐ’์€ 5
  • โ€œ๋ฐฐ์—ด์€ ํ•œ๋ฒˆ ์ƒ์„ฑํ•˜๋ฉด ์‹คํ–‰ ๋™์•ˆ ๊ทธ ๊ธธ์ด๋ฅผ ๋ฐ”๊ฟ€ ์ˆ˜ ์—†๋‹ค.โ€

  • ์™œ? - ํ• ๋‹น๋œ ์—ฐ์†์ ์ธ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์„ ์—ฐ์žฅํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๋ณด์žฅ X

  • ๋ถ€์กฑํ•  ๊ฒฝ์šฐ - ๋” ํฐ ์—ฐ์†๋œ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์„ ์ƒˆ๋กœ ์ฐพ์•„์„œ ๊ธฐ์กด ๋ฐ์ดํ„ฐ๋ฅผ ๋ณต์‚ฌ ํ›„ ์ถ”๊ฐ€

5. ๋ฐฐ์—ด์˜ ์ดˆ๊ธฐํ™”

  • ๋ฐฐ์—ด์˜ ๊ฐ ์š”์†Œ์— ์ฒ˜์Œ์œผ๋กœ ๊ฐ’์„ ์ €์žฅํ•˜๋Š” ๊ฒƒ
int[] score = new int[5]; // ๊ธธ์ด๊ฐ€ 5์ธ intํ˜• ๋ฐฐ์—ด์„ ์ƒ์„ฑ
score[0] = 50;            // ๊ฐ ์š”์†Œ์— ์ง์ ‘ ๊ฐ’์„ ์ €์žฅ
score[1] = 60;
score[2] = 70;
score[3] = 80;
score[4] = 90;
// ๋” ๊ฐ„๋‹จํ•œ ๋ฐฉ๋ฒ•
int[] score = new int[]{50, 60, 70, 80, 90};
int[] score = {50, 60, 70, 80, 90}; // new int[]๋ฅผ ์ƒ๋žตํ•  ์ˆ˜ ์žˆ์Œ
int[] score;
score = {50, 60, 70, 80, 90};          // ์—๋Ÿฌ. new int[]๋ฅผ ์ƒ๋žตํ•  ์ˆ˜ ์—†์Œ
score = new int[]{50, 60, 70, 80, 90}; // OK.

6~7. ๋ฐฐ์—ด์˜ ์ถœ๋ ฅ


int[] iArr = {100, 95, 80, 70, 60}
// ๋ฐฐ์—ด์„ ๊ฐ€๋ฆฌํ‚ค๋Š” ์ฐธ์กฐ๋ณ€์ˆ˜ iArr์˜ ๊ฐ’์„ ์ถœ๋ ฅํ•œ๋‹ค.
System.out.println(iArr); // [I@14318bb์™€ ๊ฐ™์€ ํ˜•์‹์˜ ๋ฌธ์ž์—ด์ด ์ถœ๋ ฅ๋จ
// ์˜ˆ์™ธ์ ์œผ๋กœ character ๋ฐฐ์—ด์˜ ๊ฒฝ์šฐ
char[] chArr = {'a', 'b', 'c', 'd'};
System.out.println(chArr); // abcd๊ฐ€ ์ถœ๋ ฅ๋จ
// ๋ฐฐ์—ด iArr์˜ ๋ชจ๋“  ์š”์†Œ๋ฅผ ์ถœ๋ ฅ
System.out.println(Arrays.toString(iArr)); // [100, 95, 80, 70, 60]๊ฐ€ ์ถœ๋ ฅ๋จ

14~15. String ํด๋ž˜์Šค


14. String ํด๋ž˜์Šค

    1. String ํด๋ž˜์Šค๋Š” char[]์™€ ๋ฉ”์„œ๋“œ(๊ธฐ๋Šฅ)๋ฅผ ๊ฒฐํ•ฉํ•œ ๊ฒƒ
    1. String ํด๋ž˜์Šค๋Š” ๋‚ด์šฉ์„ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์—†๋‹ค. (read only)
String a = "a";
String b = "b";
a = a + b // a ๋ณ€์ˆ˜์— "a"๊ฐ€ "ab"๋กœ ๋ฐ”๋€Œ๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ์ƒˆ๋กœ์šด ๋ฌธ์ž์—ด "ab"๋ฅผ ์ƒˆ๋กœ ์ฐธ์กฐ

15. String ํด๋ž˜์Šค์˜ ์ฃผ์š” ๋ฉ”์„œ๋“œ

๋ฉ”์„œ๋“œ์„ค๋ช…
char charAt(int index)๋ฌธ์ž์—ด์—์„œ ํ•ด๋‹น ์œ„์น˜(index)์— ์žˆ๋Š” ๋ฌธ์ž๋ฅผ ๋ฐ˜ํ™˜
int length()๋ฌธ์ž์—ด์˜ ๊ธธ์ด๋ฅผ ๋ฐ˜ํ™˜
String substring(int from, int to)๋ฌธ์ž์—ด์—์„œ ํ•ด๋‹น ๋ฒ”์œ„(from~to)์˜ ๋ฌธ์ž์—ด์„ ๋ฐ˜ํ™˜
boolean equals(Object obj)๋ฌธ์ž์—ด์˜ ๋‚ด์šฉ์ด ๊ฐ™์€์ง€ ํ™•์ธ
char[] toCharArray()๋ฌธ์ž์—ด์„ ๋ฌธ์ž๋ฐฐ์—ด(char[])๋กœ ๋ณ€ํ™˜ํ•ด์„œ ๋ฐ˜ํ˜ผ
String str = "ABCDE";
char ch = str.charAt(3); // ๋ฌธ์ž์—ด str์˜ 4๋ฒˆ์งธ ๋ฌธ์ž 'D'๋ฅผ ch์— ์ €์žฅ
String str = "012345";
String tmp = str.substring(1, 4); // str์—์„œ index๋ฒ”์œ„ 1~4์˜ ๋ฌธ์ž๋“ค์„ ๋ฐ˜ํ™˜
System.out.println(tmp);          // "123" ์ถœ๋ ฅ

18~20. 2์ฐจ์› ๋ฐฐ์—ด


18. 2์ฐจ์› ๋ฐฐ์—ด

  • ํ…Œ์ด๋ธ” ํ˜•ํƒœ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๊ธฐ ์œ„ํ•œ ๋ฐฐ์—ด
int[][] score = new int[4][3]; // 4ํ–‰ 3์—ด์˜ 2์ฐจ์› ๋ฐฐ์—ด์„ ์ƒ์„ฑ

20. 2์ฐจ์› ๋ฐฐ์—ด์˜ ์ดˆ๊ธฐํ™”

int[][] score = new int[][]{ {1, 2, 3}, {4, 5, 6} };
int[][] score = { {1, 2, 3}, {4, 5, 6} }; // new int[][] ์ƒ๋žต
// ์ง๊ด€์ ์œผ๋กœ ์ดˆ๊ธฐํ™”
int[][] score = new int[][]{
								{1, 2, 3},
								{4, 5, 6}
							};

24. Arrays๋กœ ๋ฐฐ์—ด ๋‹ค๋ฃจ๊ธฐ


๋ฐฐ์—ด์˜ ๋น„๊ต์™€ ์ถœ๋ ฅ - equals(), toString()

int[]   arr   = {0, 1, 2, 3, 4};
int[][] arr2D = {{11, 12}, {21, 22}};
System.out.println(Arrays.toString(arr));       // [0, 1, 2, 3, 4]
System.out.println(Arrays.deepToString(arr2D)); // [[11, 12], [21, 22]]
String[][] str2D  = new String[][]{{"aaa", "bbb"}, {"AAA", "BBB"}};
String[][] str2D2 = new String[][]{{"aaa", "bbb"}, {"AAA", "BBB"}};
System.out.println(Arrays.equals(str2D, str2D2));     // false (1์ฐจ์›๋ฐฐ์—ด ๋น„๊ต ๊ฐ€๋Šฅ)
System.out.println(Arrays.deepEquals(str2D, str2D2)); // true  (๋‹ค์ฐจ์›๋ฐฐ์—ด ๋น„๊ต ๊ฐ€๋Šฅ)

๋ฐฐ์—ด์˜ ๋ณต์‚ฌ - copyOf(), copyOfRange()

int[]   arr  = {0, 1, 2, 3, 4};
int[][] arr2 = Arrays.copyOf(arr, arr.length); // arr2 = [0,1,2,3,4]
int[][] arr3 = Arrays.copyOf(arr, 3);          // arr3 = [0,1,2]
int[][] arr4 = Arrays.copyOf(arr, 7);          // arr4 = [0,1,2,3,4,0,0]
int[][] arr5 = Arrays.copyOfRange(arr, 2, 4);  // arr5 = [2,3]
int[][] arr6 = Arrays.copyOfRange(arr, 0, 7);  // arr6 = [0,1,2,3,4,0,0]

๋ฐฐ์—ด์˜ ์ •๋ ฌ - sort()

int[] arr = {3, 2, 0, 1, 4};
Arrays.sort(arr);                         // ๋ฐฐ์—ด arr๋ฅผ ์ •๋ ฌ
System.out.println(Arrays.toString(arr)); // [0,1,2,3,4]