1. 컬렉션 프레임워크
- 여러 데이터를 편리하게 관리할 수 있게 만들어 놓은 것
- 자료 구조 및 알고리즘을 구조화
- 대표 인터페이스 : List, Set, Map
2. List 인터페이스
- 순서가 있는 데이터의 집합
- 데이터 중복 허용
- 대표 구현 클래스 : ArrayList, LinkedList, Vector
// ArrayList
// 타입을 지정 안하면 Object가 되어있는 것과 동일하다.
ArrayList<String> list = new ArrayList<>();
list.add("dokuny"); // 리스트에 추가, (인덱스,값) 이렇게 사용하면 인덱스 위치에 저장
list.get(0); // 인덱스로 값을 가져옴
list.remove("dokuny"); // 리스트에서 삭제, 인덱스로도 삭제 가능
list.size(); // 리스트에 몇개가 들어있는지 반환(사이즈반환)
list.contains("dokuny"); // 값이 들어있는지 boolean으로 반환
list.indexOf("dokuny"); // 값이 몇번째 인덱스에 있는지 int로 반환
// LinkedList
LinkedList<String> list2 = new LinkedList<>();
list2.addFirst("FirstDokuny"); // 맨 앞에 저장
list2.addLast("LastDokuny"); // 맨 뒤에 저장
list2.removeFirst(); // 맨 앞 삭제
list2.removeLast(); // 맨 뒤 삭제
3. Set 인터페이스
- 순서가 없는 데이터의 집합
- 데이터의 중복 허용 X
- 대표 구현 클래스 : HashSet, TreeSet
// HashSet
HashSet<String> set = new HashSet<>();
set.add("dokuny");
set.remove("dokuny"); // 값으로 삭제
set.size();
set.contains("dokuny");
set.clear(); // 모든 값 삭제
// TreeSet
TreeSet<Integer> set2 = new TreeSet<>();
set2.lower(10); // 매개변수보다 바로 아래 작은 값 반환
set2.higher(5); // 매개변수보다 바로 위의 큰 값 반환
4. Map 인터페이스
- 키와 값의 쌍으로 이루어진 데이터 집합
- 순서를 유지하지 않음
- 대표 구현 클래스 : HashMap, TreeMap
// HashMap
HashMap<Object, Object> map = new HashMap<>();
map.put(1,"kiwi"); // 키와 값으로 데이터 저장
map.get(1); // 키로 데이터 가져옴
map.remove(1); // 키로 삭제
// TreeMap
TreeMap<Object, Object> objectObjectTreeMap = new TreeMap<>();
Map.Entry<Object, Object> objectObjectEntry = map2.firstEntry(); // 맵의 첫번째 엔트리를 가져옴
map2.firstKey(); // 첫번째 키 가져옴, last도 당연히 있다.
// 추가적으로 TreeSet에서 봤던 higher,lower들도 사용 가능
'JAVA > JAVA 기초' 카테고리의 다른 글
스트림 (Stream) (0) | 2022.03.29 |
---|---|
람다식 (0) | 2022.03.29 |
예외 (Exception) (0) | 2022.03.29 |
입출력(IO) (0) | 2022.03.29 |
내부 클래스(Inner Class)와 익명 클래스(Anonymous Class) (0) | 2022.03.29 |
댓글