■ ArrayList
- ArrayList는 List 인터페이스의 대표적인 구현 클래스이다.
package struct;
import java.util.ArrayList;
import java.util.List;
public class ArrayListTest {
public static void main(String[] args) {
// ArrayList는 클래스(concrete class) : 객체 생성할 수 있는 것
// abstract 클래스 (interface, abstract class) : 객체 생성 못하는 것
List<String> list = new ArrayList<>();
List<String> list2 = null;
// CREATE
list.add("사과");
list.add("배");
list.add("바나나");
list.add("복숭아");
list.add("딸기");
System.out.println(list.get(1));
// 중간에 데이터 삽입하기
list.add(1, "수박"); // 배 자리에 수박 추가
System.out.println("데이터의 개수: " + list.size() + "개");
for(String s : list) System.out.println(s); // list에 있는 값을 s에 넣어서 출력(전체 순회)
System.out.println("========");
System.out.println(list); // ArrayList의 toString()dl 오버라이드 되어있기 때문에 주소 대신 목록이 출력
// 수정
list.set(1, "오렌지"); // 배를 오렌지로 바꿈
// 삭제
list.remove(0); // 사과 삭제
System.out.println("남은 데이터: " + list.size());
// 전체 삭제
list.clear();
System.out.println("남은 데이터: " + list.size());
System.out.println(list); // 빈 [ ]
}
}
package struct;
import java.util.ArrayList;
import java.util.List;
class Person {
String name;
int age;
public Person(String name, int age) {
super();
this.name = name;
this.age = age;
}
}
public class ArrayListTest2 {
public static void main(String[] args) {
List<Person> list = new ArrayList<>();
list.add(new Person("홍길동", 12));
list.add(new Person("전우치", 25));
list.add(new Person("손오공", 30));
list.add(new Person("사오정", 31));
// 전우치 자리에 저팔계 넣기 ==> size 5개
list.add(1, new Person("저팔계", 15));
// 사오정 삭제 ==> size 4개
Person p = list.remove(4);
// 손오공 위치에 삼장법사를 넣음 ==> size 4개
p = list.set(3, new Person("삼장법사", 65));
// 저팔계를 꺼내옴
p = list.get(1);
}
}
'프로그래밍 언어 > Java' 카테고리의 다른 글
[Java] StringBuffer / Wrapper (0) | 2024.01.30 |
---|---|
[Java] Set / Map / HashMap (0) | 2024.01.29 |
[Java] List (1) | 2024.01.29 |
[Java] 컬렉션(Collection) (0) | 2024.01.29 |
[Java] 추상 클래스(Abstract Class) (1) | 2024.01.25 |