소개
이 랩에서는 Java 에서 ArrayList 를 LinkedHashSet 으로 변환하는 방법을 배웁니다. LinkedHashSet 은 Java 에서 Set 을 구현하기 위해 연결 리스트 (linked list) 자료 구조를 활용하는 클래스입니다. 따라서 배열과 유사한 리스트를 고유한 데이터 컬렉션으로 변환하려는 경우 유용합니다. LinkedHashSet 은 고유한 데이터를 수집하는 데 사용됩니다.
이 랩에서는 Java 에서 ArrayList 를 LinkedHashSet 으로 변환하는 방법을 배웁니다. LinkedHashSet 은 Java 에서 Set 을 구현하기 위해 연결 리스트 (linked list) 자료 구조를 활용하는 클래스입니다. 따라서 배열과 유사한 리스트를 고유한 데이터 컬렉션으로 변환하려는 경우 유용합니다. LinkedHashSet 은 고유한 데이터를 수집하는 데 사용됩니다.
Java 에서 ArrayList 를 생성하고 add() 메서드를 사용하여 몇 가지 요소를 추가합니다.
import java.util.ArrayList;
public class ArrayListToLinkedHashSet {
public static void main(String[] args) {
ArrayList<String> arrayList = new ArrayList<>();
arrayList.add("Apple");
arrayList.add("Mango");
arrayList.add("Orange");
arrayList.add("Mango");
}
}
Java 8 스트림 API 를 사용하여 ArrayList 를 LinkedHashSet 으로 변환할 수 있습니다. Collectors.toCollection() 메서드는 ArrayList 요소를 LinkedHashSet 에 수집하여 고유한 요소를 얻습니다.
import java.util.ArrayList;
import java.util.LinkedHashSet;
import java.util.stream.Collectors;
public class ArrayListToLinkedHashSet {
public static void main(String[] args) {
ArrayList<String> arrayList = new ArrayList<>();
arrayList.add("Apple");
arrayList.add("Mango");
arrayList.add("Orange");
arrayList.add("Mango");
//ArrayList to LinkedHashSet using stream API
LinkedHashSet<String> linkedHashSet = arrayList.stream().collect(Collectors.toCollection(LinkedHashSet::new));
}
}
add() 메서드를 사용하여 요소를 하나씩 추가하고 고유한 요소의 컬렉션을 얻어 ArrayList 를 LinkedHashSet 으로 변환할 수도 있습니다.
import java.util.ArrayList;
import java.util.LinkedHashSet;
public class ArrayListToLinkedHashSet {
public static void main(String[] args) {
ArrayList<String> arrayList = new ArrayList<>();
arrayList.add("Apple");
arrayList.add("Mango");
arrayList.add("Orange");
arrayList.add("Mango");
//ArrayList to LinkedHashSet using add() method
LinkedHashSet<String> linkedHashSet = new LinkedHashSet<String>();
for (String element : arrayList) {
linkedHashSet.add(element);
}
}
}
ArrayList 를 LinkedHashSet 의 생성자에 인수로 전달하여 LinkedHashSet 을 얻을 수도 있습니다.
import java.util.ArrayList;
import java.util.LinkedHashSet;
public class ArrayListToLinkedHashSet {
public static void main(String[] args) {
ArrayList<String> arrayList = new ArrayList<>();
arrayList.add("Apple");
arrayList.add("Mango");
arrayList.add("Orange");
arrayList.add("Mango");
//ArrayList to LinkedHashSet using constructor
LinkedHashSet<String> linkedHashSet = new LinkedHashSet<String>(arrayList);
}
}
ArrayList 를 LinkedHashSet 으로 변환한 후, 두 컬렉션 모두를 출력하여 고유한 요소를 확인해 보겠습니다.
import java.util.ArrayList;
import java.util.LinkedHashSet;
public class ArrayListToLinkedHashSet {
public static void main(String[] args) {
ArrayList<String> arrayList = new ArrayList<>();
arrayList.add("Apple");
arrayList.add("Mango");
arrayList.add("Orange");
arrayList.add("Mango");
//ArrayList to LinkedHashSet using constructor
LinkedHashSet<String> linkedHashSet = new LinkedHashSet<String>(arrayList);
//print ArrayList
System.out.println("ArrayList: " + arrayList);
//print LinkedHashSet
System.out.println("LinkedHashSet: " + linkedHashSet);
}
}
터미널 창을 열고 코드 파일이 있는 디렉토리로 이동합니다. javac 명령을 사용하여 코드를 컴파일하고 java 명령을 사용하여 실행합니다.
javac ArrayListToLinkedHashSet.java
java ArrayListToLinkedHashSet
이 랩에서는 Java 에서 ArrayList 를 LinkedHashSet 으로 변환하는 세 가지 방법 (스트림 API, add() 메서드, 생성자) 을 배웠습니다. 또한 ArrayList 와 LinkedHashSet 을 모두 출력하여 고유한 요소를 확인했습니다.