배열 Array (배열,관리,숫자로 관리함)
같은 자료형 변수의 묶음
형식
자료형 자료형변수[ ] = new 자료형[100];
int array[ ] = new int[100]; 100개변수 묶음
array[0] ~ [99] 번호로 접근한다. 이 번호를 index numder 한다.
자신이 원하는 개수를 동적할당을 할수 있는데 동적할당을 하면 정적변수가 된다.
int Array[] = new int[10]; // [0] ~ [9]
Array[0] = 10;
Array[1] = 11;
Array[2] = 12;
Array[3] = 13;
Array[4] = 14;
Array[5] = 15;
Array[6] = 16;
Array[7] = 17;
Array[8] = 18;
Array[9] = 19;
System.out.println("Array[1] = "+ Array[1]);
System.out.println("Array[8] = "+ Array[8]);
/*
Array[1] = 11
Array[8] = 18
*/
배열의 길이
int Array[] = new int[10];
String sArray[] = { "hello","hi","good"};
System.out.println("sArray[2] = "+ sArray[2]);
System.out.println("배열길이: "+ sArray.length);
System.out.println("배열길이: "+ Array.length);
/*
sArray[2] = good
배열길이: 3
배열길이: 10
*/
배열복제
String sArray[] = { "hello","hi","good"};
String aliasArray[] = sArray;
// 배열복제는 포인터 같은 개념 복제한 데이터를 수정하면 원본데이터도 같이 수정된다.
System.out.println("aliasArray : "+ aliasArray[0]);
aliasArray[1] = "안녕";
System.out.println("sArray : "+ sArray[1]);
int number1[] = {11,12,13 };
int number2[] = {21,22,23 };
int num1[] = number1;
int num2[] = number2;
System.out.println("num1 : " + num1[0] + " " + num1[1] + " " + num1[2] + " " );
System.out.println("num2 : " + num2[0] + " " + num2[1] + " " + num2[2] + " " );
int temp[];
temp = num1;
num1 = num2;
num2 = temp;
// 이런식으로 배열 전체데이터를 바꿀수 있다. 반복문 돌려서 비효율적 처리를 하지 않아도 된다.
System.out.println("num1 : " + num1[0] + " " + num1[1] + " " + num1[2] + " " );
System.out.println("num2 : " + num2[0] + " " + num2[1] + " " + num2[2] + " " );
/*
aliasArray : hello
sArray : 안녕
num1 : 11 12 13
num2 : 21 22 23
num1 : 21 22 23
num2 : 11 12 13
*/
2차원 배열
int arr2[][] = { // [행][열] == [3][4]
{1, 2, 3, 4 },
{5, 6, 7, 8 },
{9, 10, 11, 12 },
};
System.out.println(arr2[0][0]);
System.out.println(arr2[1][2]);
int array2[][] = new int[2][3];
array2[0][0] = 11;
array2[0][1] = 12;
array2[0][2] = 13;
array2[1][0] = 21;
array2[1][1] = 22;
array2[1][2] = 23;
System.out.println("array2.length = " + array2.length);
System.out.println("array2[0].length = " + array2[0].length);
for (int i = 0; i < array2.length; i++) { //2
for (int j = 0; j < array2[0].length; j++) { //3
System.out.print("array2["+ i +"]["+ j +"] = " + array2[i][j]+ " ");
}
System.out.println();
}
int _arr2[][] = { // [행][열] == [3][6]
{1, 2, 3, 4 },
{5, 6, 7, 8, 9 },
{9, 10, 11, 12, 13, 14 },
};
System.out.println("_arr2.length = " + _arr2.length);
System.out.println("_arr2[0].length = " + _arr2[0].length);
System.out.println("_arr2[1].length = " + _arr2[1].length);
System.out.println("_arr2[2].length = " + _arr2[2].length);
/*
1
7
array2.length = 2
array2[0].length = 3
array2[0][0] = 11 array2[0][1] = 12 array2[0][2] = 13
array2[1][0] = 21 array2[1][1] = 22 array2[1][2] = 23
_arr2.length = 3
_arr2[0].length = 4
_arr2[1].length = 5
_arr2[2].length = 6
*/
'IT > Java' 카테고리의 다른 글
Java 선택정렬, 버블정렬 (0) | 2020.02.14 |
---|---|
Java Wrapper class (0) | 2020.02.13 |
Java 계산기 만들기 (0) | 2020.02.07 |
Java 반복문 기초 (0) | 2020.02.07 |
Java String 문자열 기초 (0) | 2019.11.28 |
댓글