今天做个小程序 就是KTV点歌单 :从文件读取歌曲信息---------》按照不同的信息做出不同的排列
//已创建Song类型
第一步:读取文件
File songFile = new File("D:\\曹蕊\\workspace\\KtvSongJob","songList.txt");
BufferedReader reader = new BufferedReader(new FileReader(file));
String songInfo ;
while((songInfo = reader.readLine()) != null)
{
addSong(line);
}
第二 步:addSong(String line)把文件放到SongList列表中用于显示
public void addSong(String line)
{
String[] s = line.split("/");//把歌曲信息字段分开
Song mySong = new Song(s[0], s[1], s[2], s[3]);
longList.add(mySong);
}
第三步:按顺序显示list信息
Collections.sort();//依照字母排序
此方法分析:
1:static <T extends Comparable<? super T>> void |
sort(
List<T> list)
|
2:
static <T> void | sort( List<T> list, Comparator<? super T> comparator) |
所以用sort()另一种重载版本;Comparator 是个独立的接口;
需要实现 public int compare(T one,T two);方法
Collections.sort();调用时会自动调用compare();
根据传入sort()的参数不同 Collections.sore()会调用不同的sort()版本