배열
배열 사용하기
배열의 장점: . 통일된 하나의 변수명으로 다량의 데이터를 처리할수 있습니다. . 각각의 데이터에 공통된 연산작업을 적용할 수 있습니다. . 변수 사용을 줄임으로 코드를 간결하게 할 수 있습니다.
배열의 단점: . 배열의 요소를 선언하고 전부 이용하지 않으면 심각한 메모리 낭비가 발생합니다. . 자바는 이 문제를 개선한 여러형태의 Collection Class들이 존재합니다. . 배열의 사이즈는 필요에 따라 증가시키거나 감소할수가 없습니다.
배열의 사용예: . 사이즈가 변경되지 않는 데이터 배열인 경우 . 1월
12월, 월요일일요일, 각종 지정된 공휴일 . 각 학교의 학년(16, 13, 1~4)index를 통한 배열 요소의 구분: 배열명[인덱스]=값
배열의 요소가 일정한 경우만 사용하고 요소의 갯수를 알수 없는 경우는 Collection Class를 사용해야 합니다.
배열의 선언
int[] weight = new int[7]; (접근 범위: weight[0]~weight[6])
int weight[] = new int[7]; 4 * 7 = 28 바이트 할당
int weight[]={100, 200}; 자동으로 배열 요소가 결정이 되고 값이 할당됩니다.
배열요소에 값 저장
weight[0] = 3
weight[1] = 6
1차원 배열 이용
public class DevEnvironment {
public static void main(String[] args) {
String[] lang = new String[3];
String[] script = new String[3];
String[] dbms = {"Oracle","ms-sql","my-sql"};
lang[0] = "JAVA";
lang[1] = "C#";
lang[2] = "C";
script[0]="JSP";
script[1]="ASP.NET";
script[2]="PHP";
for(int i=0; i<=2; i++){
System.out.println(lang[i] + "-"+script[i]+"-"+dbms[i]);
}
}
}
다차원 배열의 이해 및 활용
2차원 배열은 일반적으로 for문을 2개이상 동반합니다.
1차원(열), 2차원(행, 열), 3차원(면, 행, 열) 배열의 구조
Two_Array.java
class Two_Array {
public static void main (String args[]) {
int[][] m = {{10,20}, //1행
{30,40}, //2행
{50,60}}; //3행
>
/*
int[][] m2 = new int[3][2];
0,0(10) 0,1(20)
1,0(30) 1,1(40)
2,0(50) 2,1(60)
m2[0][0] = 10;
m2[0][1] = 20;
m2[1][0] = 30;
m2[1][1] = 40;
m2[2][0] = 50;
m2[2][1] = 60;
*/
for(int i=0; i<3; i++) { //행
for(int j=0; j<2;j++) { //열
System.out.println("m[" + i + "]n[" + j + "]=" + m[i][j]);
}
}
}
}
MultiArrayTest.java
length 속성은 for문의 반복횟수를 결정하는데 사용됩니다.
3차원 배열은 [면][행][열]로 이루어져 있으며 프로그래밍분야에서 사용되지 않습니다.
class MultiArrayTest{
public static void main(String args[]){
//1차원 배열
int[ ] arr1 = new int[3];
//2차원 배열
int[ ][ ] arr2;
arr2 = new int[2][3];
//1차원 배열은 컬럼의수를 리턴합니다.
System.out.println("arr1배열의 열의 수 : " + arr1.length + "\\n");
//2차원 배열은 행의수를 리턴합니다.
System.out.println("arr2배열의 행의 수 : " + arr2.length + "\\n");
//각행의 열의수를 리턴합니다.
System.out.println("arr2배열의 1행의 열의 수 : " + arr2[0].length + "\\n");
System.out.println("arr2배열의 2행의 열의 수 : " + arr2[1].length + "\\n");
}
}
Last updated