English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
List와 Set 이 두 개의 인터페이스는 Collection 프레임워크에 속합니다. 이 두 인터페이스는 Collection 인터페이스를 확장합니다. 그들은 모두 객체 컬렉션을 단일 요소로 저장하는 데 사용됩니다.
jdk1.2그 전에, 우리는 Arrays, Vectors, Hashtable을 사용하여 객체를 단일 요소로 그룹화했습니다.
순번 | 키 | 리스트 | 그룹 |
---|---|---|---|
1개 | 위치 접근 | 리스트는 컬렉션 내 요소의 위치 접근을 제공합니다. | 집합은 컬렉션 내 요소의 위치에 대한 접근을 제공하지 않습니다 |
2 | 구현 | 리스트의 구현은 ArrayList, LinkedList, Vector, Stack입니다 | 집합 인터페이스의 구현은 HashSet과 LinkedHashSet입니다 |
3 | 중복 | 리스트에서는 중복된 요소를 저장할 수 있습니다. | 집합에서는 중복된 요소를 저장할 수 없습니다 |
4 | 주문 | 리스트는 컬렉션 내 요소의 삽입 순서를 유지합니다 | 집합은 어떤 순서도 유지하지 않습니다 |
5 | 빈 요소 | 리스트는 여러 개의 null 요소를 저장할 수 있습니다 | 집은 하나의 공백 요소만 저장할 수 있습니다. |
import java.util.List; import java.util.ArrayList; import java.util.LinkedList; public class ListExample { public static void main(String[] args) { List<String> al = new ArrayList<String>(); al.add("BMW"); al.add("Audi"); al.add("BMW"); System.out.println("List Elements: "); System.out.print(al); } }
출력 결과
List Elements: [BMW, Audi, BMW]
import java.util.Set; import java.util.HashSet; import java.util.TreeSet; public class SetExample { public static void main(String args[]) { int count[] = {2, 4, 3, 5}; Set<Integer> hset = new HashSet<Integer>(); try{ for(int i = 0; i<4; i++{ hset.add(count[i]); } System.out.println(hset); } catch(Exception e){ e.printStackTrace(); } } }
출력 결과
[2, 4, 3, 5]