[Book Review] JAVA의 신 (3)

Tony Kim·2021년 10월 7일
0
post-thumbnail

[Book Review] JAVA의 신 (3)

CH7. 여러 데이터를 하나에 : 배열

배열 선언

int [] nums;
int nums[];
-> 이와 같이 변수를 선언할 때 대괄호를 열고 닫음으로써, 
해당 변수가 배열이라는 것을 정의할 수 있음 (대괄호 안에는 아무것도 쓰면 안됨)
-> 배열도 참조 자료형이기 때문에 new를 사용
int [] nums = new int[7]
-> 초기화 / 7개의 값을 지정할 수 있는 자리를 가짐
nums[1] = 15;
-> 배열에 값을 지정

배열의 기본값

byteArray[0] = 0
shortArray[0] = 0
intArray[0] = 0
longArray[0] = 0
floatArray[0] = 0.0
doubleArray[0] = 0.0
charArray[0] = [ ] // \u0000 화면 출력 X
boolArray[0] = false

배열 선언 정리

int[] numbers = new int[] {10, 20, 30};
//개수 생략해야 함
int[] numbers = {10, 20, 30}; 
// new int[]  생략 가능 , 선언과 동시에 초기화할때만 이렇게 가능
int[] ids; 
ids = new int[] {10, 20, 30};
// 선언후
public class ArrayInitialize {
  static String [] month = { “january”, “December”};
}
static사용하면 객체를 생성할때마다 month배열을 새로 생성할필요 없음
(주의해서 사용)

2차원 배열

int [] twoDim[]; OR int twoDim[][];
twoDim = new int[2][3]

OR

int [][] towDim = {{1,2,3},{4,5,6}}
twoDim[0] = new int [3];
twoDim[1] = new int [2];
(1차원만 지정하고 2차원 지정하지 않을 수도 있음)
-> 이 경우 2차원 공간 다르게 설정가능

배열의 길이 파악
1차원 배열 길이 : twoDim.length
2차원 배열 길이 : twoDim[0].length

배열의 내용 확인할 때
(매번 길이 불러오지 않게 변수로 할당)

int D1 = twoDim.length
for (int one = 0; one<D1; one++) {
  int D2 = twoDim[0].length
  for (int two = 0; two<D2; two++) {
    System.out.println(“twoDim[“+one+”][“+two+”]=”+twoDim[one][two]);
  }
}

배열을 위한 for루프
1) 1차원 배열

for(int data:oneDim) {
  System.ou.println(data);
}

2) 2차원 배열

for(int[] dimArray:twoDim) {
  for(int data:dimArray){
    System.ou.println(data);
  }
}

자바가 실행할 때 원하는 값들을 넘기기

public class Arraymain {
  public static void main (String args[]) {
    if(args.length>0) {
      for(String arg:args) {
        System.out.println(arg); 
        }
     }
   }
 }

명령어

$ javac ArrayMain.java
$ java ArrayMain a b c d

결과

a
b
c
d

-> 애플리케이션이 시작할 때 전달해야할 값들이 있다면 이 방식 활용

profile
Back-end-dev

0개의 댓글