Back End/Java

컬렉션 프레임워크 API(Collection Framework API)

DevHam94 2023. 7. 15. 19:04
인터페이스 / 클래스 설명 분류
List 순서가 있는 객체의 모음을 다루는 인터페이스 List
ArrayList List 인터페이스를 구현하는 클래스 List
LinkedList List 인터페이스를 구현하는 클래스 List
Set 중복된 원소가 없는 객체의 모음을 다루는 인터페이스 Set
HashSet Set 인터페이스를 구현하는 클래스 Set
TreeSet SortedSet 인터페이스를 구현하는 클래스 Set
Map 키-값 쌍의 객체를 다루는 인터페이스 Map
HashMap Map 인터페이스를 구현하는 클래스 Map
TreeMap SortedMap 인터페이스를 구현하는 클래스 Map

데이터를 저장하고 관리하는 다양한 방법을 사용할 수 있다.

 

ArrayList에 데이터를 넣을때는 list.add(data)

가져올때는 list.get(index) 

출력할때는 향상된 for문을 이용한다. 

for(int data : list){

  System.out.println(data);

}

 

Set<String> set= new HashSet<>();

중복된 요소는 add로 추가되지 않는다. 

갯수 출력 set.size()

향상된 for문으로 출력할 수 있다.

for(String element : set){

   System.out.println(element);

}

삭제할때는 ""로 정확하게 데이터를 입력해줘야한다. 

set.remove("banana");

요소가 들어가있는지 확인할려면 .contains("")를 사용한다. 

boolean check=set.contains("banana");

안의 내용을 비우는법

set.clear();

안이 비어있는지 확인할려면

boolean empty=set.isEmpty();

 

Map은 key와 value의 형태로 관리가된다. 

key를 접근하면 value를 가져올수있다. 이 두가지가 들어있는 테이블을 HashTable 혹은 HashMap이라고 지칭한다. 

HashMap을 이용하면 키로 값을 가져와서 검색성능을 높일 수 있다. 

Map중에서도 HashMap을 많이 사용한다. 

Key, value 두가지를 이용해서 제네릭은 두가지 타입을 넣어야한다. 

Map<String, Integer> map=new HashMap<>();

데이터를 넣을때는 map.put("apple", 1000); 여기서 key는 중복될 수 없다.

auto-boxing으로인해서 int값을 넣어도 자동으로 객체로 변환해준다.

수정은 put을 이용해서 같은 key의 value를 수정할 수 있다.

map.put("apple", 2000);

삭제는 map.remove("apple");

전체 출력은

for(Map.Entry<String, Integer> entry : map.entrySet()){

   System.out.println(entry.getKey() + "'s price" + entry.getValue));

}

.entrySet()은 Map안의 key와 value를 꺼내오는 메서드다. 여기서 하나의 key와 value의 세트가 하나의 entry이다.

Entry는 Map안의 별도의 클래스라 Map.Entry<>라고 표시를 해줘야한다. 

 

char[] strArray=str.toCharArray(); 문자열을 하나의 char로 잘라서 char배열에 넣는 메서드이다.

'Back End > Java' 카테고리의 다른 글

람다식, 함수형 인터페이스  (0) 2023.07.20
제네릭(Generic)  (0) 2023.07.16
Wrapper Class  (0) 2023.07.15
정규표현식 정리  (0) 2023.07.12
LinkedHashMap과 HashMap(엑셀저장시)  (0) 2023.04.10