>> ๐ป ์๋ฐ(JAVA): ๋ฐฐ์ด
๐ ๐ ๐
๐ ๋ฐฐ์ด์ ์์ฑ
โ๏ธ 1์ฐจ์ ๋ฐฐ์ด
int[] arr1 = {1,2,3,4};
int[] arr2 = new int[]{3,4,5,6};
int[] arr3 = new int[];
arr3[0] = 5;
// Error
boolean[] bools;
bools = {true, false, false}; // ์ด๊ธฐํ๋ ์ ์ธ๊ณผ ๋์์๋ง ๊ฐ๋ฅํ๋ค.
โ๏ธ 2์ฐจ์ ๋ฐฐ์ด
// ์ ์ธ
int[][] intArray;
int intArray[][];
int[] intArray[];
// ์์ฑ
intArray = new int[4][3];
// ํ ๋น
intArray[0][2] = 3;
// ์ ์ธ+์์ฑ+ํ ๋น
int[][] intArray = { {0,1,2}, {3,4,5}, {6,7,8} };
// 1์ฐจ Array๋ถํฐ ์์ฑ
int[][] intArray = new int[4][];
// 2์ฐจ Array ์์ฑ
intArray[1] = new int[2];
intArray[0] = new int[4];
intArray[2] = {1,2,3}; // Error. ์ด๊ธฐํ๋ ์์ฑ๊ณผ ๋์์๋ง ๊ฐ๋ฅ
๐ ๐ ๐
๐ ๋ฐฐ์ด์ ๋ณต์ฌ
์ฝ๋ฉํ ์คํธ ํ ๋ ์ ๋ง ์ค์ํ๋ค๊ณ ํ๋ค. ์๊ธฐ์๊ธฐ!
๐กArrays.copyOf()
์ ๋ ฅํ ํฌ๊ธฐ๋งํผ ๋ณต์ฌํ๊ณ , ๋ณต์ฌํ ๋ฐฐ์ด์ ํฌ๊ธฐ๋ฅผ ๋์ด์๋ฉด 0 ๊ฐ์ ๋ฃ๋๋ค.
int[] arr = {1,2,3,4,5};
int[] data = Arrays.copyOf(arr, 3);
// data: {1,2,3}
int[] data2 = Arrays.copyOf(arr, 10);
// data2: {1,2,3,4,5,0,0,0,0,0}
๐กSystem.arraycopy()์ด ์๋ค. ์์ฃผ ์ค์ํ๋ค!
public static native void arraycopy(Object src, int srcPos,
Object dest, int destPos,
int length);
โป๏ธ Object src: ๋ณต์ฌํ ๊ธฐ์กด ๋ฐฐ์ด
โป๏ธ int srcPos: ๊ธฐ์กด ๋ฐฐ์ด์ ์ด๋ ๋ถ๋ถ๋ถํฐ ๋ณต์ฌํ๊ณ ์ถ์์ง
โป๏ธ Object dest: ๊ธฐ์กด ๋ฐฐ์ด์ ๋ณต์ฌํ ๋ชฉํ ๋ฐฐ์ด
โป๏ธ int destPos: ๋ชฉํ ๋ฐฐ์ด์ ์ด๋์๋ถํฐ ๋ณต์ฌ๋ฅผ ํ ์ง
โป๏ธ int length: ๊ธฐ์กด ๋ฐฐ์ด์ ์ผ๋งํผ ๋ณต์ฌํ ์ง
์์ )
int[] origin = {1,2,3,4,5,6,7,8,9,10};
int[] dest = new int[10];
System.arraycopy(origin, 5, dest, 0, 5)
// ๊ฒฐ๊ณผ
// dest: {6,7,8,9,10,null,null,null,null,null}
๐ ๐ ๐
๐ ๋ฐฐ์ด์ ์ถ๋ ฅ
for( int num : arr ){
System.out.print(num);
}
Arrays.toString(arr[])
Arrays.deepToString(arr[])
๐ก Arrays.toString(arr[])์ ๊ดํธ ์์ ๋ค์ด๊ฐ ๋ฐฐ์ด์ 1์ฐจ์์ ๋ด๊ธด ๋ด์ฉ์ String์ผ๋ก ์ถ๋ ฅํด์ค๋ค.
๊ทธ๋ฅ System.out.println(arr[])์ ํ๋ฉด ์ฃผ์๊ฐ์ด ์ถ๋ ฅ๋๋๋ฐ,
์ด ๋ Arrays.toString()์ ์ด์ฉํ๋ฉด ๋ฐฐ์ด์ ์ปจํ ์ธ ๋ฅผ ์ถ๋ ฅํด์ค๋ค.
๐กArrays.deepToString(arr[])
2์ฐจ์ ๋ฐฐ์ด์ ๊ฒฝ์ฐ 2์ฐจ์์ ์ฃผ์๊ฐ์ด 1์ฐจ์์ ๋ด๊ฒจ์๊ธฐ ๋๋ฌธ์ ๊ทธ ์ฃผ์๊ฐ์ด ์ถ๋ ฅ๋๋ค. ๊ทธ๋ด ๋๋ Arrays.deepToString์ ์ฌ์ฉํ์ฌ 2์ฐจ์๋ฐฐ์ด์ 2์ฐจ์๊น์ง ์ถ๋ ฅํด์ค๋ค.
๐ ๐ ๐
๏ผฐ๏ฝ๏ฝ๏ฝ๏ฝ ๏ฝ ๏ผข๏ฝ ๏ผณ๏ผก๏ผน
๐๐ฉ๐ข๐ฏ๐ฌ๐ด ๐ง๐ฐ๐ณ ๐ณ๐ฆ๐ข๐ฅ๐ช๐ฏ๐จ
'Programming > Programming Language' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Python] *args๋?/ zip๊ณผ ์ฐ๊ด์์ผ ์ด์ฉํ๊ธฐ (0) | 2021.08.09 |
---|---|
JAVA์ ๋ฌธ์์ด ์ฒ๋ฆฌ(String): ์ ๋ ฅํ๊ธฐ, ํ ์์ฉ ์ฝ๊ธฐ, ์๋ฅด๊ธฐ (0) | 2021.07.15 |