자바는 자료구조를 사용해서 객체들을 효율적으로 추가, 삭제, 검색할 수 있도록 인터페이스와 구현 클래스를 java.util 패키지에서 제공한다. 이들을 컬렉션 프레임워크라고 부른다.
컬렉션은 객체의 저장을 뜻하고, 프레임워크란 사용 방법을 정해놓은 라이브러리를 말한다.
컬렉션 프레임 워크의 주요 인터페이스로는 List, Set, Map이 있다.
List - ArrayList , LinkedList , Vector
Set - HashSet , TreeSet
Map - HashMap , Hashtable , TreeMap , Properties
List<String> list = new ArrayList<>();
list.add("홍길동"); //맨 끝에 객체 추가
list.add(1,"김철수"); //지정된 인덱스에 객체 삽입
String str = list.get(1); //인덱스로 객체 검색
list.remove(0); // 인덱스로 객체 삭제
list.remove("김철수"); // 객체 삭제
List<String> list = new ArrayList<string>(); // ArrayList 선언
List<String> list = new ArrayList<>(); // ArrayList의 타입 파라미터를 생략하면
왼쪽 List에 지정된 타입을 따라 간다.
package test;
import java.util.ArrayList;
import java.util.List;
public class ArrayListTest {
public static void main(String[] args) {
List<String> list = new ArrayList<String>();
list.add("java"); //String 객체를 저장
list.add("HTML");
list.add("CSS");
list.add(2,"JavaScript");
int size = list.size(); // 저장된 총 객체수
System.out.println("총 객체수 :"+size); // 총 객체수 출력
String skill = list.get(2); // 2번 인덱스 객체 얻기
System.out.println("2:"+skill);
System.out.println("---------------------");
for (int i = 0; i < list.size(); i++) { // 저장된 모든 객체 반복해서
출력
String str = list.get(i);
System.out.println(i+":"+str);
}
}
}