ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Collections framework
    [공부] 프로그래밍/Spring・Spring Boot (JAVA) 2023. 4. 27. 20:25

     

    Collections framework


    개체 그룹을 표현하고 조작하는 표준화된 방법을 제공하는 Java의 클래스 및 인터페이스 집합이다. 다양한 방식으로 개체 컬렉션을 관리하는 데 사용할 수 있는 재사용 가능한 데이터 구조 및 알고리즘 집합을 제공한다. 컬렉션 프레임워크는 다음과 같은 몇 가지 주요 구성 요소로 구성된다.
    인터페이스 : 다양한 컬렉션 유형의 동작을 정의하는 추상 데이터 유형으로 컬렉션 인터페이스의 예로는 List, Set 및 Map이 있다.
    구현 : 컬렉션 인터페이스의 실제 구현을 제공하는 구체적인 클래스로 컬렉션 구현의 예로는 ArrayList, HashSet 및 HashMap이 있다.
    알고리즘 : 정렬 또는 검색과 같은 컬렉션에 대한 다양한 작업을 수행하는 데 사용할 수 있는 방법으로 수집 알고리즘의 예로는 sort(), binarySearch() 및 shuffle()이 있다.
     

    ArrayList

     
    ArrayList는 크기 조정 가능한 배열과 같은 데이터 구조를 제공하는 Java의 List 인터페이스 구현이다. 제네릭 클래스이므로 모든 유형의 개체를 저장할 수 있다.

    import java.util.ArrayList;
    
    public class Example {
        public static void main(String[] args) {
            // create an ArrayList of strings
            ArrayList<String> list = new ArrayList<>();
    
            // add some elements to the list
            list.add("foo");
            list.add("bar");
            list.add("baz");
    
            // print the contents of the list
            System.out.println(list); // output: [foo, bar, baz]
    
            // remove an element from the list
            list.remove(1);
    
            // print the contents of the list again
            System.out.println(list); // output: [foo, baz]
    
            // get an element from the list
            String element = list.get(1);
    
            // print the element
            System.out.println(element); // output: baz
        }
    }

     

    List와 Set의 차이점

     
    List은 중복을 허용하는 정렬된 요소 모음이다. List의 요소는 인덱스 위치로 액세스 할 수 있으며 List의 모든 위치에서 삽입하거나 제거할 수 있다. 

    import java.util.ArrayList;
    import java.util.List;
    
    public class Example {
        public static void main(String[] args) {
            List<String> list = new ArrayList<>();
    
            list.add("foo");
            list.add("bar");
            list.add("baz");
            list.add("foo");
    
            System.out.println(list); // output: [foo, bar, baz, foo]
            System.out.println(list.get(2)); // output: baz
    
            list.remove(1);
    
            System.out.println(list); // output: [foo, baz, foo]
        }
    }

    반면에 Set은 고유한 요소의 정렬되지 않은 모음이다. Set의 요소는 인덱스 위치로 액세스할 수 없으며 중복될 수 없다.

    import java.util.HashSet;
    import java.util.Set;
    
    public class Example {
        public static void main(String[] args) {
            Set<String> set = new HashSet<>();
    
            set.add("foo");
            set.add("bar");
            set.add("baz");
            set.add("foo");
    
            System.out.println(set); // output: [bar, foo, baz]
    
            set.remove("bar");
    
            System.out.println(set); // output: [foo, baz]
        }
    }

     

    '[공부] 프로그래밍 > Spring・Spring Boot (JAVA)' 카테고리의 다른 글

    파일 확장자 제거  (0) 2023.08.19
    iterator, Map  (0) 2023.04.27
    Object 클래스, 제네릭  (0) 2023.04.24
    @RestController, produces, subscribeOn  (0) 2023.04.19
    Flux, @Tailable  (0) 2023.04.14
Designed by Tistory.