一、集合
TreeSet:以有序状态保持并可防止重复,其元素必须是Comparable
HashMap:可用成对的key/value来存取
LinkedList:针对经常插入或者删除中间元素所设计的高效率集合
HashSet:防止重复的集合,可快速地找出相符的元素
LinkedHashMap:类似HashMap,但可以记住元素插入的顺序,也可以设定成依照元素上次存取的先后来排序
ArrayList:可以避免重复的元素,动态的操作
二、排序
对于基础主数据类型,可以用Collection.sort()直接排序
Collection.sort():
public static
public
指定按照类中某一个实例变量来排序:
class Song implements Comparable{
String title;
@override
public int compareTo(Song s){
return title.compareTo(s.tile);
}
}
上述方法只能按照title来排序。
按照多种实例变量来排序:
1、创建并实现Comparator的内部类,以compare()方法代替compareTo()方法;
2、制作该类的实例;
3、调用重载版的sort();
public class box{
...
class compare implements Comparator{
@override
public int compare(Song one,Sone two){
return one.artist.compareTo(two.artist);
}
@override
public int wordscompare(Song one,Sone two){
return one.words-two.words;
}
}
...
public void go(){
...
compare ac = new compare();
Collection.sort(songList,ac);
}
}
三、对象相等判断
if(foo.equals(bar) && foo.hashCode()==bar.hashCode()){
//foo equals to bar
}
equals保证引用是一样的;hashCode会冲突;
四、多态参数与泛型
public void take(ArrayList list)
public void take(ArrayList extends Animal> list)
典例:
ArrayList dogs = new ArrayList();
ArrayList animals = new ArrayList();
List list = new ArrayList();//ok
ArrayList dogs = new ArrayList();//ok
ArrayList animals = dogs;
List dogList = dogs;//ok
ArrayList
五、
1、Collection.sort(List);
List中对象的类必须实现Comparable、compareTo()
2、Collection.sort(List,compare);
List中对象的类不必实现Comparable、Comparatorcompare对象的类必须实现Comparator、compare()