Java

[Java] 생활코딩 | 배열

kyra 2022. 9. 17. 18:34

https://youtu.be/pegfdsD1IY4

  • 배열(Array)는 연관된 정보를 모아서 관리하기 위해서 사용하는 '데이터 타입'이다. 정보를 그룹핑 하는데 사용한다.
  • 파이썬의 리스트랑 비슷한 느낌..

 

1. 배열의 정의

//배열 정의하는 방법 (1)

문자데이터타입[] 배열이름 = {데이터1, 데이터2, 데이터3, .. ,}

String[] classGroup = {"최진혁", "최유빈", "한이람", "이고잉"};
//배열 정의하는 방법 (2)

문자데이터타입[] 배열이름 = new 데이터타입[원소갯수]

String[] classGroup = new String[4];
classGroup[0] = "최진혁" //classGroup의 0번째 원소는 "최진혁"으로 정의
classGroup[1] = "최유빈"
classGroup[2] = "한이람"
classGroup[3] = "이고잉"

 

2. 배열의 제어

  • 파이썬처럼 인덱스를 사용해서 배열 안의 원소(element)를 불러올 수 있다.
public class HelloJava {
    public static void main(String[] args) {
        String[] classGroup = {"최진혁", "최유빈", "한이람", "이고잉"};
        System.out.println(classGroup[0]);
        System.out.println(classGroup[1]);
        System.out.println(classGroup[2]);
        System.out.println(classGroup[3]);
        System.out.println(classGroup[4]);
    }
}

출력:

최진혁

최유빈

한이람

이고잉

 

 

  • 배열에 몇개의 원소를 수용할 수 있는지 확인 : length 사용
  • 몇개의 원소가 담겨있는지를 알아보는게 아니다.

 

String[] classGroup = new String[4];
classGroup[0] = "최진혁" 
System.out.println(classGroup.length); //4 출력
classGroup[1] = "최유빈"
System.out.println(classGroup.length); //4 출력
classGroup[2] = "한이람"
System.out.println(classGroup.length); //4 출력
classGroup[3] = "이고잉"
System.out.println(classGroup.length); //4 출력

 

3. 배열의 사용

  • 파이썬처럼 인덱스를 사용해서 배열 안의 원소를 꺼내올 수 있다.
public class HelloJava {
    public static void main(String[] args) {
        String[] members = {"최진혁", "최유빈", "한이람"};
        for (int i = 0; i < members.length; i++){
            String member = members[i]; //배열 안 원소를 인덱싱
            System.out.println(member + "이 상담을 받았습니다.");
        }
    }
}

출력:

최진혁이 상담을 받았습니다.
최유빈이 상담을 받았습니다.
한이람이 상담을 받았습니다.

 

 

4. for - each

  • 반복문과 배열은 뗄 수 없는 관계
  • 함께 자주 쓰여서 더 간단한 문법이 생겨났다.
public class HelloJava {
        public static void main(String[] args) {
            String[] members = { "최진혁", "최유빈", "한이람" };
            for (String e : members) { // members의 값을 변수 e에 담아서 사용
                System.out.println(e + "이 상담을 받았습니다");
            }
        }

    }

출력:

최진혁이 상담을 받았습니다.
최유빈이 상담을 받았습니다.
한이람이 상담을 받았습니다.

 

 

5. 배열의 한계

  • 배열은 처음 정의할 때 그 크기가 정해진다. 그래서 정해진 크기 이상의 값을 넣을 수 없다.
String[] members = new String[3];
members[0] = "최진혁";
members[1] = "최유빈";
members[2] = "한이람";
members[3] = "이고잉";

 

따라서 위와 같이 members라는 배열에 원소를 3개까지만 정해두었다면, members[3] = "이고잉";은 3명 자리에 4명을 넣는 격이므로 오류가 발생한다.