반응형
- 첫 번째 방법
import java.util.ArrayList;
import java.util.Collections;
public class Main {
static class Obj implements Comparable<Obj>{
String s;
int n;
public Obj(String s, int n) {
this.s = s;
this.n = n;
}
@Override
public int compareTo(Obj o) {
return Integer.compare(this.n, o.n); // n 오름차순 정렬
// return this.s.compareTo(o.s); // s 오름차순 정렬
}
}
public static void main(String[] args) {
ArrayList<Obj> list = new ArrayList();
list.add(new Obj("B", 3));
list.add(new Obj("E", 5));
list.add(new Obj("G", 1));
list.add(new Obj("A", 8));
list.add(new Obj("D", 10));
list.add(new Obj("Z", 7));
list.add(new Obj("X", 6));
Collections.sort(list);
for(Obj o : list) {
System.out.println(o.s + " " + o.n);
}
}
}
- 두 번째 방법
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
public class Main {
static class Obj {
String s;
int n;
public Obj(String s, int n) {
this.s = s;
this.n = n;
}
}
public static void main(String[] args) {
ArrayList<Obj> list = new ArrayList();
list.add(new Obj("B", 3));
list.add(new Obj("E", 5));
list.add(new Obj("G", 1));
list.add(new Obj("A", 8));
list.add(new Obj("D", 10));
list.add(new Obj("Z", 7));
list.add(new Obj("X", 6));
Collections.sort(list, new Comparator<Obj>() {
public int compare(Obj o1, Obj o2) {
// return o1.s.compareTo(o2.s);
return Integer.compare(o1.n, o2.n);
}
});
for(Obj o : list) {
System.out.println(o.s + " " + o.n);
}
}
}
반응형
'JAVA' 카테고리의 다른 글
Java 의 length, length(), size() 차이점 (0) | 2020.07.03 |
---|---|
HashMap 의 Key, Value 기준 정렬하기 (0) | 2020.06.23 |
JDBC API 연습문제 (0) | 2020.04.02 |
모듈 기술자 (Java 11 버전 이후) (3) | 2019.12.18 |
"HashMap"의 "Value" 기준 정렬 (0) | 2019.08.27 |