JAVA
java 객체 정렬
BSHwan
2020. 7. 2. 22:16
반응형
- 첫 번째 방법
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);
}
}
}
반응형