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>
객체를 반환한다.
댓글남기기