#Collection API
Java
interface 와 interface 사이에도 extends가 된다.
☆많이씀 집합과 비슷 PYTHON 딕셔너리
ㅇㅇ | List | Set | Map |(KEY(중복 X), Value) 한 쌍
중복 | O | X | X |
순서 | O | X | X |
종류 | ArrayList | HashSet | HashMap |
종류 | Vector | | HashTabble |
Vector 보단 ArrayList 가 성능이 좋고 HashTabble 보단 HashMap 이 성능이 좋다.
새거가 성능이 짱짱 좋음
List 와 Set 은 상위클래스가 비슷해서 비슷한 메소드를 상속 받지만 Map은 좀 경우가 다르다
보통 Map이라고 붙어있는 메소드가 새로 만들어진거니까 그거 쓰면 성능이 좋다.
많이 사용하는 메소드 예시
package com.util;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class CollectionsTest {
public static void main(String[] args) {
List<String> fruits = new ArrayList<>(); //ArrayList 타입의 fruits 객체 생성
//add 함수로 하나하나 저장
fruits.add("apple");
fruits.add("orrange");
fruits.add("banana");
//1.addAll()
Collections.addAll(fruits,"apple","orange","banana"); //한번에 추가하는 방법
//2.sort
Collections.sort(fruits); //오름 차수 정렬 방법
System.out.println(fruits.toString());
//3.search
Collections.sort(fruits);
System.out.println(Collections.binarySearch(fruits, "banana")); // 찾으면 바로 인덱스 반환
System.out.println(Collections.binarySearch(fruits, "grape")); //못 찾으면 마지막 인덱스에 - 붙여서 나옴
//4.copy
List list =new ArrayList();
Collections.addAll(list, "one","two","three","four");
Collections.copy(list,fruits);
System.out.println(fruits.toString());
//5.fill
Collections.fill(list, "filled with dummy data"); //list안에 모든 데이터를
"filled with dummy data" 초기화 한다
System.out.println(list.toString());
}
}
'JAVA > JAVA 기본 문법' 카테고리의 다른 글
[JAVA] Set (0) | 2019.01.20 |
---|---|
[JAVA]- 리스트 ArrayListTest, Vector (0) | 2019.01.20 |
[JAVA]- instance of 연산자 (0) | 2019.01.20 |
[JAVA]-interface (0) | 2019.01.20 |
[JAVA]-abstract (0) | 2019.01.20 |