컬렉션 프레임워크 : 표준화된 방식의 자료구조
✔ 사용
- 데이터를 묶어서 관리하는 경우 사용
- 주로 배열 대신 사용
- 자료 형들은 첫 글자만 대문자로 변환 → 클래스로 사용
- 클래스를 지정하지 않는 경우 → Object가 자동으로 들어감
- String, Byte, Boolean.. but!! (int -> Integer)
- 출력하는 방법
for(int i=0; i<list5.size(); i++) {
System.out.print(list5.get(i)+" ");
}
//단, Set,Map은 순서가 없어서 향상된 for문과 Iterator 사용!
for(int tmp : list5) {
System.out.print(tmp + " ");
}
Iterator<Integer> it = list5.iterator();
while(it.hasNext()) { //다음요소가 있는지 체크, 값이 있으면 true
Integer tmp = it.next(); //next()의 다음요소 가져오기
System.out.print(tmp + " "); //출력
}
✔ 내림차순 / 오름차순 정렬 (sort(객체)) ⭐
- 오름차순 정렬 (1,2,3..)
Collections.sort(); : 오름차순 정렬(작은수부터)
- 내림차순 정렬(5,4,3..)
//sort(객체)
//- 객체: Comparator 인터페이스를 구현한 객체를 넣어야함 (익명클래스 사용)
//- 비교:(Compare) 메서드를 사용하여 객체를 생성
//내림차순 이용시 사용!
list5.sort(new Comparator<Integer>() {
@Override
public int compare(Integer o1, Integer o2) {
//o1-o2 : 오름차순, o2-o1 : 내림차순
return o1-o2; //+면 오름차순으로 -는 내림차순으로 이용
}
});
System.out.println(list);
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
public class List01 {
public static void main(String[] args) {
// 하루 일과를 저장하는 list 생성
ArrayList<String> list = new ArrayList<>();
list.add("일어나기");
list.add("도시락 준비하기");
//외부 구현시,
list.sort(new Test());
System.out.println(list);
}
class Test implements Comparator<String>
@Override
public int compare(String o1, String o2) {
//compareTo 메서드를 활용
return o1.compareTo(o2); //오름차순
//return o2.compareTo(o1); //내람차
}
}
'JAVA > java' 카테고리의 다른 글
[JAVA] 컬렉션 프레임워크 : Set (중복X, 순서X) (0) | 2023.03.26 |
---|---|
[JAVA] 컬렉션 프레임워크 : List (번지O, 중복O) (0) | 2023.03.26 |
[JAVA] 업캐스팅/ 다운캐스팅 (0) | 2023.03.26 |
[JAVA] 다형성 (객체지향프로그램 특징) (0) | 2023.03.26 |
[JAVA] 객체 지향 프로그램의 4가지 특징 (0) | 2023.03.26 |