Class13(자료구조 관련 클래스)
2023. 01. 19. 수업내용 정리
자료구조 관련 클래스
자료구조 관련 클래스
Collections
Collections(클래스,java.lang.Collections)클래스는 유틸리티 클래스(객체화가 안되는) 중 하나로,Collection(java.util.Collection)과 관련된 유용한 기능을 가지고 있다.- 객체 메서드 : 유틸리티 클래스는 객체 메서드를 가지지 않는다.
- 정적 메서드
<T>addAll(Collection<? super T> c, T... ts):Collection<T>타입의c객체에ts가 가진T타입의 인자를 모두 추가한다.<T>copy(List<? super T> dest, List<? extends T> source):source가 가진 인자를dest에 복사한다. 단,dest의 길이는source의 길이 이상이어야 한다.<T>fill(List<? super T> c, T t):c가 가진 모든 인자를t로 변경한다.frequency(Collection<?> C, Object o):c가 가진 모든 인자 중 전달 받은o와equals()호출 결과가true인것의 개수(int)를 반환한다.<T>replaceAll(List<T> C, T o, T n):c가 가지는 모든 인자 중에o와equals()가true인 인자들을 모두n으로 대체한다.reverse(List<?> c):c가 가지는 인자들의 순서를 뒤집는다.<T>reverseOrder():sort()메서드에 활용할 수 있는Comparator<T>객체를 반환한다. 내림차순 정렬을 위해 사용한다.shuffle(List<?> c):c가 가지는 인자들의 순서를 무작위로 섞는다.<T>sort(List<T> c):c가 가지는 인자를 오름차순으로 정렬한다.<T>sort(List<T> c, Comparator<? super T> p):c가 가지는 인자를 주어진 비교자p의 기준에 맞게 정렬한다.<T>unmodifiableCollection(List<? extends T> c):c객체가 가지는 인자를 그대로 가지는 새로운Collection객체를 반환한다. 단, 반환된 객체의 인자 변경은 불가능하다.<T>unmodifiableList(List<? extends T> c):c객체가 가지는 인자를 그대로 가지는 새로운List객체를 반환한다. 단, 반환된 객체의 인자 변경은 불가능하다.<K, V>unmodifiableMap(Map<? extends K, ? extends V> c):c객체가 가지는 인자를 그대로 가지는 새로운Map객체를 반환한다. 단, 반환된 객체의 인자 변경은 불가능하다.<T>unmodifiableSet(Set<? extends T> c):c객체가 가지는 인자를 그대로 가지는 새로운Set객체를 반환한다. 단, 반환된 객체의 인자 변경은 불가능하다.
Arrays
Arrays(클래스,java.util.Arrays)클래스는 기본 자료형인 배열([])및 리스트(java.util.List)등과 관련된 편의 사항을 제공하는 유틸리티 클래스이다.- 정적 메서드
<T>asList(T...ts):T에 대한 배열(T[])을T에 대한java.util.List객체(List<T>)로 반환한다.<T>compare(T[] a, T[] b): 전달된 배열a와b의 길이가 같고 각 순서에 동일한 인자가 들어있을 경우0을 반환한다.a가b보다 작을 경우 음수를,a가b보다 클 경우 양수를 반환한다.<T>copyOf(T[] a, int s): 전달 받은 배열a의 인자를 그대로 가지는 길이가s인 새로운 배열을 반환한다. 단, 전달 받은 배열의 길이가s보다 크다면 후순위에 있는 인자를 자르고(Truncation),s가 배열의 길이보다 크다면, 빈 공간을 기초 타입의 기본 값으로 채운다(Padding).<T>copyOfRange(T[] a, int s, int t):<T>copyOf(...)와 용법은 비슷하나 길이가 아닌 인덱스 범위를 직접 지정해주는 부분이 다르다. 순번s부터t앞 까지의 내용만을 가지는 새로운 배열을 반환한다.<T>equals(T[] a, T[] b):<T>compare(...)의 결과 값이 0인가에 대한 여부(boolean)를 반환한다. 즉,a와b의 길이 및 인자의 순서가 모두 같아야true가 반환된다.fill(?[] a, ? b): 어떤 타입의 배열a의 모든 칸을 동일한 타입의 값b로 채운다.<T>mismatch(T[] a, T[] b):a와b배열을 첫 순번 부터 비교하여 같은 순번하에 그 값이 다른 순번을 반환한다. 모든 순번하의 값이 같다면-1을 반환한다.<T>sort(T[] ts): 배열ts가 가지는 값을 오름차순 정렬한다. 만약T가 참조타입이라면Comparable에서 정의하는 값으로 비교한다.<T>sort(T[] ts, Comparator<? super T> c): 배열ts가 가지는 값을c의 기준에 따라 정렬한다.<T>stream(T[] ts): Stream API를 사용하기 위한ts에 대한Stream객체를 반환한다.
List
- 저적 메서드
<T>copyOf(Collection<? extends T> c):c가 가진 인자를 동일하게 가지는 새로운 수정 불가능한(Unmodifiable)List<T>객체를 반환한다.of(): 인자를 가지지 않는 새로운List<T>객체를 반환한다.<T>of(T... ts)T[]인ts가 가지는 인자를 인자로 가지는 수정 불가능한(Unmodifiable)List<T>객체를 반환한다.
댓글남기기