본문 바로가기
IT/Java

Java 배열의 기초

by 바른롱매 2020. 2. 13.

 

배열 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

댓글