编译时如下错误:
warning:[unchecked] unchecked call to add[E] as a member of the
raw type java.util.ArrayList
books.add(book);
1 warning
(注:books被申明为ArrayLis类型的对象一个引用:ArrayList books=new ArrayList();
book是我自定义的一个类对象的引用。)
warning:[unchecked] unchecked call to add[E] as a member of the
raw type java.util.ArrayList
books.add(book);
1 warning
(注:books被申明为ArrayLis类型的对象一个引用:ArrayList books=new ArrayList();
book是我自定义的一个类对象的引用。)
ArrayList<book> books = new ArrayList<book>();这样以后get的时候就不用强制类型转换了,编译器知道得到的是book类型的
public static void main(String[] args){
Book[] book = new Book[]{new Book(3.1,"aa"),
new Book(2.3,"bb"), new Book(4.3,"cc")};
List<Book> list = new ArrayList<Book>();
for(int i=0; i<book.length; i++){
list.add(book[i]);
}
System.out.println("Before sort:\t"+list);
Collections.sort(list);
System.out.println("After sort:\t"+list);
}
}class Book implements Comparable{
private double price;
private String author;
public Book(double p, String a){
price = p;
author = a;
}
public int compareTo(Object b){
Book book = (Book)b;
return (price<book.price? -1 : (price==book.price? 0 : 1));
}
public String toString(){
return "price:"+price+" author:"+author;
}
}