package demo.sort;
import java.util.ArrayList;
import java.util.Collections;
public class ArrayListDemo1 {
public static void main(String[] args) {
ArrayList<User> users = new ArrayList<User>();
users.add(new User(10, "김유신"));
users.add(new User(80, "이순신"));
users.add(new User(40, "유관순"));
users.add(new User(50, "홍길동"));
users.add(new User(20, "강감찬"));
Collections.sort(users);
for (User user : users) {
System.out.println(user.getNo() + ", " + user.getName());
}
}
}
package demo.sort;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
public class ArrayListDemo2 {
public static void main(String[] args) {
ArrayList<Fruit> box = new ArrayList<Fruit>();
box.add(new Fruit("사과", 2000));
box.add(new Fruit("바나나", 6000));
box.add(new Fruit("오렌지", 3000));
box.add(new Fruit("아보카도", 8000));
box.add(new Fruit("토마토", 4000));
box.add(new Fruit("감", 9000));
Comparator<Fruit> priceComparator = new Comparator<Fruit>() {
@Override
public int compare(Fruit o1, Fruit o2) {
return o1.getPrice() - o2.getPrice();
}
};
Collections.sort(box, priceComparator);
for (Fruit fruit : box) {
System.out.println(fruit.getName() + " " + fruit.getPrice());
}
}
}
package demo.sort;
import java.util.TreeSet;
public class TreeSetDemo {
public static void main(String[] args) {
TreeSet<User> users = new TreeSet<User>();
users.add(new User(10, "김유신"));
users.add(new User(80, "이순신"));
users.add(new User(40, "유관순"));
users.add(new User(50, "홍길동"));
users.add(new User(20, "강감찬"));
for (User user : users) {
System.out.println(user.getNo() + ", " + user.getName());
}
}
}
package demo.sort;
public class User implements Comparable<User>{
private int no;
private String name;
public User() {}
public User(int no, String name) {
this.no = no;
this.name = name;
}
public int getNo() {
return no;
}
public void setNo(int no) {
this.no = no;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public int compareTo(User o) {
return name.compareTo(o.name);
}
}
package demo.sort;
public class Fruit {
private String name;
private int price;
public Fruit() {}
public Fruit(String name, int price) {
this.name = name;
this.price = price;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getPrice() {
return price;
}
public void setPrice(int price) {
this.price = price;
}
}