컬렉션 프레임워크
-여러 개의 데이터 묶음 자료를 효과적으로 처리하기 위해 구조화된 클래스 또는 인터페이스의 모음
순서가 있는 데이터의 집합, 데이터의 중복을 허용한다.
// 생성
List<String> list = new ArrayList<>();
// 배열 => List
List<String> 새 리스트 이름 = Arrays.asList(배열이름);
// 메소드
list.add("유영");
list.add(0, "태훈"); // 주어진 인덱스에 객체 추가
list.set(0, "두부"); // 인덱스에 저장된 객체를 주어진 객체로 바꿈
list.contains("유영") // true
list.get(1) // return 유영
list.size() // 객체 수 리턴
list.isEmpty()
// 객체 삭제
list.clear();
list.remove(1) // 인덱스 1 삭제
list.remove("태훈") // 객체를 직접 지정해서 삭제
순서가 없는 데이터의 집합, 데이터의 중복을 허용하지 않는다.
Set<String> set = new HashSet<>();
//반복자 Iterator 제공
Iterator<String> iterator = set.iterator();
while(iterator.hasNext()) {
String str = iterator.next();
}
// for문으로도 반복 가능
for(String str: set){ }
key와 value 한 쌍으로 이루어지는 데이터의 집합, 순서가 없다.
key값은 중복을 허용하지 않지만, value 값은 중복될 수 있다.
// 선언
MapPractice<String, Integer> map = new HashMap<>();
// 객체 추가
map.put("은기", 158);
// 객체 검색
map.containsKey("은기") // true
map.containsValue(158) // true
map.get("은기") // 158
map.isEmpty();
map.size();
map.keySet(); // key를 set에 담아서 리턴
map.clear();
map.remove("은기");
// 반복
// 0.
for(Boolean key: map.keySet()) {
if(key) {
System.out.println(result.get(key));
}
}
// 1. keySet() 메소드로 모든 키를 얻은 다음, 반복을 통해 키와 값을 얻는 방법
Set<String> keySet = map.keySet();
Iterator<String> keyIterator = keySet.iterator();
while(keyIterator.hasNext()) {
String key = keyIterator.next();
Integer value = map.get(key);
}
// 2. entrySet() 메소드로 모든 MapPractice.Entry를 얻은 다음,
// getKey(), getValue() 메소드 사용
Set<MapPractice.Entry<String, Integer> entrySet = map.entrySet();
Iterator<MapPractice.Entry<String, Integer> entryIterator = entrySet.iterator();
while(entryIterator.hasNext()){
MapPractice.Entry<String, Inteeger> entry = entryIterator.next();
String key = entry.getKey();
Integer value = entry.getValue();
}