public class Collection_Test1 {
public static void main(String[] args) throws Exception {
Scanner sc = new Scanner(System.in);
TreeSet<book> set=new TreeSet<book>(new BookComparator());
set.add(new book("流浪地球",100));
set.add(new book("三体",90));
set.add(new book("大秦帝国",110));
System.out.println(set.toString());
System.out.println("-------------遍历方式:1、使用迭代器遍历------------");
Iterator<book> iteBook = set.iterator();
while(iteBook.hasNext()) {
System.out.println(iteBook.next());
}
System.out.println("-------------遍历方式:2、使用数组遍历------------");
Object[] objsBook = set.toArray();
for(int i=0;i<objsBook.length;i++) {
System.out.println(objsBook[i]);
}
}
static class book {
String name;
double price;
book(String name,double price){
this.name=name;
this.price=price;
}
@Override
public String toString() {
return "书名:"+this.name+" 价格:"+this.price;
}
}
static class BookComparator implements Comparator<book> {
@Override
public int compare(book o1, book o2) {
if (o1.price > o2.price) {
return 1;
} else if (o1.price < o2.price) {
return -1;
}
return 0;
}
}
}
TreeSet集合是不重复有序的Set集合。