Java ArrayList 를 LinkedHashSet 으로 변환

JavaBeginner
지금 연습하기

소개

이 랩에서는 Java 에서 ArrayList 를 LinkedHashSet 으로 변환하는 방법을 배웁니다. LinkedHashSet 은 Java 에서 Set 을 구현하기 위해 연결 리스트 (linked list) 자료 구조를 활용하는 클래스입니다. 따라서 배열과 유사한 리스트를 고유한 데이터 컬렉션으로 변환하려는 경우 유용합니다. LinkedHashSet 은 고유한 데이터를 수집하는 데 사용됩니다.

ArrayList 생성

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");
    }
}

스트림 API 를 사용하여 ArrayList 를 LinkedHashSet 으로 변환

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 으로 변환

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 으로 변환

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 출력

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 을 모두 출력하여 고유한 요소를 확인했습니다.