Wrraperํด๋์ค: Auto Boxing
Wrapper ํด๋์ค: ๊ธฐ๋ณธ ๋ฐ์ดํฐ ์ ํ์ ๊ฐ์ฒด๋ก ๋ํํ์ฌ ๊ฐ์ฒด๋ก ๋ค๋ฃฐ ์ ์๋๋ก ํ๋ ํด๋์ค (Integer, Double, Boolean)
โ Auto Boxing: ๊ธฐ๋ณธ ๋ฐ์ดํฐ ์ ํ ๊ฐ์ Wrapper ํด๋์ค๋ก ์๋์ผ๋ก ๋ณํํ๋ ๊ฒ
โ Auto Unboxing: ๋ฐ๋๋ก Wrapper ํด๋์ค๋ฅผ ๊ธฐ๋ณธ ๋ฐ์ดํฐ ์ ํ์ผ๋ก ์๋ ๋ณํํ๋ ๊ฒ
// Auto Boxing: int -> Integer
int primitiveInt = 42;
Integer wrapperInt = primitiveInt; // ๊ธฐ๋ณธ ๋ฐ์ดํฐ ์ ํ์ด Wrapper ํด๋์ค๋ก ์๋์ผ๋ก ๋ณํ๋จ
// Auto Unboxing: Integer -> int
Integer wrapperInt2 = 99;
int primitiveInt2 = wrapperInt2; // Wrapper ํด๋์ค๊ฐ ๊ธฐ๋ณธ ๋ฐ์ดํฐ ์ ํ์ผ๋ก ์๋์ผ๋ก ๋ณํ๋จ
Array
//dataType arrayName[];
int[] intArray = new int[5]; // length๊ฐ 5์ธ ์ ์ ๋ฐฐ์ด ์์ฑ
int[] intArray = new int[]{1, 2, 3, 4, 5}; // ํฌ๊ธฐ๊ฐ 5์ด๊ณ ๊ฐ์ด ์ด๊ธฐํ๋ ์ ์ ๋ฐฐ์ด
๋ฐฐ์ด ์ ์ธ์ ์ด์ ๊ฐ์ด ํ๋ค.
for (int i = 0; i < intArray.length; i++) {
System.out.println(intArray[i]);
}
for (int num : intArray) {
System.out.println(num);
}
๋ฐ๋ณต๋ฌธ์ ์ฌ์ฉํ array ์์ ์ ๊ทผ
ArrayList
๋์ ๋ฐฐ์ด์ ๊ตฌํํ ํด๋์ค
- ArrayList์ ๋ด๋ถ์ ์ผ๋ก ํฌ๊ธฐ๋ฅผ ์๋์ผ๋ก ์กฐ์ ํ ์์๋ค.
- ์ ๋ค๋ฆญ์ ์ฌ์ฉํ์ฌ ํน์ ๋ฐ์ดํฐ ํ์ ์ ์์๋ง์ ์ ์ฅํ ์ ์๋๋ก ํ์ ์์ ์ฑ์ ์ ๊ณตํ๋ค.
- ์์๋ฅผ ์ค๊ฐ์ ์ฝ์ ํ๊ฑฐ๋ ์ญ์ ํ๋ ๊ฒ์ด ๋ฐฐ์ด์ ๋นํด ํจ์จ์ ์ด๋ค.
//์ ์ธ & ์์ฑ
ArrayList arrayList = new ArrayList();
//String๋ง ๊ฐ๋ฅํ ์ ๋ค๋ฆญ
ArrayList<String> arrayList = new ArrayList<String>();
//์์ ์ ๊ทผ
arrayList.get(index);
//์์ ์์
arrayList.set(index, newValue);
//์์ ์ ๊ฑฐ
arrayList.remove(element);
//ํฌ๊ธฐ ํ์ธ
arrayList.size();
๊ฐ๋ณ์ธ์
๋งค๊ฐ๋ณ์์ ๊ฐ์๊ฐ ๋์ ์ผ๋ก ๋ณํ ์ ์๋๋ก ํด์ค๋ค.
// ๊ฐ๋ณ์ธ์๋ฅผ ์ฌ์ฉํ ๋ฉ์๋
public static int calculateSum(int... numbers) {
int sum = 0;
// ๊ฐ๋ณ์ธ์๋ ๋ฐฐ์ด๋ก ์ฒ๋ฆฌ๋จ
for (int number : numbers) {
sum += number;
}
return sum;
}
//ํธ์ถ
int sum1 = calculateSum(1, 2, 3, 4, 5);
๋ฉ์๋ ๋ด๋ถ์์ ๊ฐ๋ณ์ธ์ numbers(๊ฐ๋ณ์ธ์)๋ ๋ฐฐ์ด๋ก ์ฒ๋ฆฌ๋์ด ๊ฐ ์์์ ํฉ์ ๊ณ์ฐํ ์ ์๋ค.