본문 바로가기

자바(JAVA)
[자바(Java)] Collections

// Collections

- 컬렉션과 관련된 메서드(static)를 제공함.

- import static java.util.Collections.*;


import java.util.ArrayList;
import java.util.List;
import static java.util.Collections.*;

public class Ex16 {

	public static void main(String[] args) {
		List list = new ArrayList();
		System.out.println(list);
		
		addAll(list, 1,2,3,4,5);
		System.out.println("값 추가 후 = " + list + "\n");
		
		rotate(list, 1); // 오른쪽으로 한 칸씩 이동(오른쪽에 값이 없을 경우 맨 앞으로 이동)
		System.out.println("오른쪽으로 한 칸씩 이동 후 = " + list + "\n");
		
		swap(list, 0, 2);
		System.out.println("첫 번째와 세 번째 값 교환 후 = " + list + "\n");
		
		shuffle(list);
		System.out.println("셔플 후 = " + list + "\n");
		
		sort(list, reverseOrder()); //역순 정렬
		System.out.println("내림차순으로 정렬 후 = " + list);
		System.out.println("최댓값 = " + max(list));
		System.out.println("최솟값 = " + min(list) + "\n");
		
		sort(list); //오름차순 정렬
		System.out.println("오름차순으로 정렬 후 = " + list);
		System.out.println("최댓값 = " + max(list)); // min(list, reverseOrder())
		System.out.println("최솟값 = " + min(list) + "\n"); // max(list, reverseOrder())
		
		int idx = binarySearch(list, 3);
		System.out.println("3이 저장된 위치 = " + idx + "\n");
		
		fill(list, 9);
		System.out.println("9로 채운 후 list = " + list + "\n");
		
		List list2 = nCopies(list.size(), 2); //list와 같은 크기의 새로운 list를 생성하고 2로 채운다. 단 결과는 변경 불가!
		System.out.println("list2 = " + list2 + "\n");
		
		System.out.println("list와 list2에 공통요소가 없나 ? : " + disjoint(list, list2) + "\n");
		
		copy(list, list2); //list2에 있는 요소를 list에 복사함.
		System.out.println("list = " + list);
		System.out.println("list2 = " + list2 + "\n");
		
		replaceAll(list, 2, 1); //list에 있는 2를 1로 바꾸기
		System.out.println("list = " + list + "\n");
	}
}


- 컬렉션 채우기, 복사, 정렬, 검색

fill(), copy(), sort(), binarySearch()  등

- 값 여러 개 추가

addAll(x, elements);


- 오른쪽으로 n칸 이동

rotate(x, n);

- 특정 값의 위치 교환

rotate(x, idx1, idx2);

- 위치 섞기

shuffle(x);

- 정렬

sort(x);

- 역순 정렬

reverse(x);

- 컬렉션 동기화

synchronizedXXX(x);

- 변경불가(readOnly) 컬렉션 만들기

unmodifiableXXX(x);

- 싱글톤 컬렉션(객체 한 개만 저장하는 컬렉션) 만들기 

singletonXXX(x);

- 한 종류의 객체만 저장하는 컬렉션 만들기

checkedXXX(x, type);

'자바(JAVA)' 카테고리의 다른 글

[자바(Java)] 열거형(enum)  (0) 2022.12.17
[자바(Java)] 제네릭(Generics)  (1) 2022.12.17
[자바(Java)] Set  (0) 2022.12.16
[자바(Java)] Comparator와 Comparable  (0) 2022.12.16
[자바(Java)] Arrays  (0) 2022.12.16