본문 바로가기
[스파르타코딩클럽]/Java 문법 종합반

Chapter 5. 배열

by 진진리 2023. 10. 13.
728x90
  • 선언 방법
    1. 타입[] 변수;
    2. 타입 변수[];
  • 생성: new 명령어를 통해 []안에 크기를 지정
  • 배열이 생성될 때 각 타입별 초기값으로 초기화됨
    • int는 0, boolean은 false, String은 null
  • 배열은 참조형 변수이므로 실제 값을 담지 않고 실제값의 주소값을 저장
  • 초기화 방법
    1. 중괄호 {} 이용
    2. 반복문 for문을 사용해 초기화
    3. Arrays.fill 메소드를 사용
      • Arrays.fill(배열 변수, 초기화값);  // 모두 같은 값으로 일괄 초기화
  • 복사
    1. 얕은 복사: 대입 연산자 =을 사용해서 복사하면 주소값만 복사됨
    2. 깊은 복사: 새로운 배열을 똑같이 만들고자 할 때
      • for문을 통해 배열의 기본형 값을 꺼내서 복사
      • 메서드 이용
        • int[] b = a.clone();  // 2차원 이상의 배열에서는 얕은 복사로 동작
        • int[] b = Arrays.copyOf(a, a.length);  // 배열과 함께 length값도 같이 넣어줌
  • char[] <-> String
    • String str을 char 배열으로 : char[] strCharArray = str.toCharArray();
    • char[] charArray를 String으로 : String charArrayString = new String(charArray);
  • 2차원 배열 초기화
    1. 중괄호 {}를 사용해 선언과 동시에 초기화
    2. 선언/생성 이후 반복문을 통해 초기화
  • 가변 배열: 2차원 배열을 생성할 때 열의 길이를 생략하여, 행마다 다른 길이의 배열을 요소로 저장 가능
// 가변 배열

// 선언 및 초기화
int[][] array = new int[3][];
// 배열 원소마다 각기다른 크기로 지정 가능합니다.
array[0] = new int[2];
array[1] = new int[4];
array[2] = new int[1];

// 중괄호 초기화할때도 원소배열들의 크기를 각기 다르게 생성 가능합니다.
int[][] array2 = {
    {10, 20},
    {10, 20, 30, 40},
    {10}

};

'[스파르타코딩클럽] > Java 문법 종합반' 카테고리의 다른 글

Chapter 7. 클래스  (0) 2023.10.16
Chapter 6. 컬렉션  (0) 2023.10.13
Chapter 4. 조건문, 반복문  (0) 2023.10.13
Chapter 3. 연산자  (0) 2023.10.13
Chapter 2. 변수, 형변환  (0) 2023.10.12