728x90
[컬렉션 프레임워크]
- 컬렉션 프레임 워크에는 List / set / map등의 인터페이스를 제공한다.
- 많은 데이터를 쉽고 편리하고 효과적으로 관리하기 위에 자바에서 제공하는 클래스의 모음이다.
[ArrayList]
- List 인터페이스에서 상속 받아 사용된다.
- ArrayList는 객체가 추가 되면서 용량이 초과 되면 초과된 용량 만큼 길이가 늘어나게 된다.
(예시) 여러 명이 앉을 수 있는 의자에서 중간에 사람이 앉으려 하면 그 위치부터 모든 사람이 한칸씩 이동해주어야한다.
[ArrayList 선언 방법]
public static void main(String[] args) {
ArrayList<Integer> list = new ArrayList<>();
}
- <> 안에는 Integer, String, Character, Student, Phone 등과 같은 다양한 타입이 들어 올 수 있다.
[ArrayList 데이터 추가]
public static void main(String[] args) {
ArrayList<Integer> list = new ArrayList<>();
// 데이터 추가
list.add(1);
list.add(2);
}
- add(Object)를 사용하여 인덱스 마지막에 데이터를 추가한다.
- add(Object, index)를 사용하여 지정한 인덱스에 값을 추가할 수 있다.
[ArrayList 데이터 조회]
public static void main(String[] args) {
ArrayList<Integer> list = new ArrayList<>();
// 데이터 추가
list.add(1);
list.add(2);
// 데이터 조회
System.out.println(list.get(0));
System.out.println(list.get(1));
}
- get(index)를 사용하여 해당 인덱스의 데이터를 조회할 수 있다.
- 반복문을 사용하여 해당 인덱스 혹은 전체 데이터를 조회할 수 있다.
[ArrayList 데이터 삭제]
public static void main(String[] args) {
ArrayList<Integer> list = new ArrayList<>();
// 데이터 추가
list.add(1);
list.add(2);
// 데이터 삭제
list.remove(1);
list.clear();
}
- remove(Object)를 사용하여 Object와 같은 값을 삭제한다.
- clear()를 사용하여 값 전체를 삭제할 수 있다.
[ArrayList 데이터 변경]
public static void main(String[] args) {
ArrayList<Integer> list = new ArrayList<>();
// 데이터 추가
list.add(1);
list.add(2);
// 데이터 변경
list.set(0, 3);
list.set(1, 5);
}
- set(index, Object)를 사용하여 값을 변경할 수 있다.
- 데이터를 변경하려면 해당 데이터의 인덱스를 알아야 한다.
[ArrayList 데이터 검색하기]
public static void main(String[] args) {
ArrayList<String> list = new ArrayList<>();
// 데이터 추가
list.add("자바");
list.add("파이썬");
// 데이터 검색
if(list.contains("자바")){
System.out.println("글자 검색하기");
}
}
- contains(Object)를 사용하여 원하는 데이터를 검색할 수 있다.
[ArrayList크기 구하기]
public static void main(String[] args) {
ArrayList<String> list = new ArrayList<>();
// 데이터 추가
list.add("자바");
list.add("파이썬");
// 크기 구하기
System.out.println(list.size();
}
- list.size()를 사용하여 해당 리스트의 크기를 구할 수 있다.
728x90
'Java' 카테고리의 다른 글
[Collection 프레임워크] - HashSet (0) | 2023.06.12 |
---|---|
[Collection 프레임워크] - LinkedList (0) | 2023.06.12 |
제네릭과 제네릭 클래스 / Wrapper 클래스 (0) | 2023.06.12 |
인터페이스 - 놀이공원 티켓 구입하기 (0) | 2023.06.08 |
인터페이스 (0) | 2023.06.08 |