1. 배열의 한계
- 배열 선언 시 고정된 크기로 선언
- 배열의 크기를 바꿀 수 없다.
→데이터 변동이 심한 경우(추가, 삭제), 데이터의 크기를 예측할 수 없는 경우 불편
2. ArrayList(579p.)
- 가장 보편적으로 많이 사용하는 컬렉션 클래스로 객체 저장
- 가변적인 길이(길이가 유동적)
- 원하는 위치의 추가, 삭제가 쉬움
3. ArrayList의 선언
ArrayList<데이터타입>변수명 =new ArrayList<데이터타입>( );
*데이터 타입은 객체 형태로 작성한다.
*크기를 지정하지 않는다.
*()는 메소드를 의미한다.
4. ArrayList의 값 추가
ArrayList의 크기 확인: ArrayList.size()
- 인덱스 순서대로 값 입력: 변수명.add(값);
- 원하는 인덱스에 값 입력: 변수명.add(인덱스, 값);
5. ArrayList의 값 조회
System.out.println.(변수명. get(인덱스 번호));
6. ArrayList의 값 삭제
- remove(인덱스번호): 원하는 인덱스의 값 삭제
- clear(): 모든 인덱스의 값 삭제
7. 배열 vs ArrayList
배열 | ArrayList | |||
공통점 |
|
|||
차이점 |
크기 | 고정 | 가변 | |
선언 및 생성 | 자료형[ ]변수명 =new [크기] |
ArrayList<자료형> 변수명 =new ArrayList<자료형>( ); | ||
값 추가 |
변수명[ ] = 값 | 마지막 위치 |
변수명.add(값) | |
원하는 위치 | 변수명.add(인덱스, 값) | |||
값 조회 | 변수명[인덱스] | 변수명.get(인덱스) | ||
값 삭제 |
x | 원하는 위치 삭제 | remove(인덱스) | |
전체 삭제 | clear() | |||
크기 조회 | length | size() |
[실습]
Scanner scan =new Scanner(System.in);
ArrayList<String> arrayList = new ArrayList<String>();
for(int i=0; i<4; i++){
system.out.println(“이름을 입력하세요: “);
arrayList.add(scan.next()); //arraylist에 팀원 이름 추가하기
};
system.out.println(“연구개발팀의 팀원은”)
for(int i=0; i<arrayList.size(); i++){
system.out.println(arrayList.get(i)+ “ “); //arraylist 팀원 이름 조회하기
};
system.out.println(“입니다.”);
'JAVA' 카테고리의 다른 글
[JAVA]12. 생성자 (0) | 2023.06.11 |
---|---|
[JAVA]11. 객체지향 프로그래밍 (0) | 2023.06.10 |
[JAVA]9. 메소드 (0) | 2023.06.08 |
[JAVA]8. 2차원 배열 (1) | 2023.06.07 |
[JAVA]7. 배열 (0) | 2023.06.06 |