数据结构2"/>
HeadFirst Java 学习笔记 数据结构2
代码
package 数据结构;import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.util.ArrayList;
import java.util.Collections;public class Jukebox2 {
ArrayList<String> songList = new ArrayList<String>();
public static void main(String[] args) {new Jukebox2().go();}
public void go() {getSongs();System.out.println(songList);Collections.sort(songList);//调用Collection静态的sort()方法,然后在列出清单System.out.println(songList);//第二次的输出并按照字母排序
}
private void getSongs() {// TODO Auto-generated method stub
try {File file=new File("SongList.txt");BufferedReader reader = new BufferedReader (new FileReader(file));
String line =null;
while ((line = reader.readLine()) !=null) {addSong(line);
}
} catch(Exception ex) {ex.printStackTrace();
}
}
private void addSong(String lineToParse) {// TODO Auto-generated method stubString[] tokens = lineToParse.split("/");songList.add(tokens[0]);
}
}
SongList.txt
Communication/The Cardigans
Black Dog/Led Zeppelin
Dreams/Van Halen
Comfortably Numb/Pink Floyd
Beth/Kiss
倒退噜/黄可令
运行结果
第一次直接输出
第二次按排序输出
Collection的sort()方法
Collections类仅包含使用Collection结构的类的简单静态方法。sort方法只有一个输入参数,这是把list对象按照自然顺序排列(数字按1,2,3…字母按字典顺序等)
其他
ArrayList不是唯一的集合
虽然ArrayList会是最常用的,但偶尔还是会有特殊情况。
下面列出几个较为重要的
★TreeSet
以有序状态保持并可防止重复
★HashMap
可用成对的name/value来保存与取出
★LinkedList
针对经常插入或删除中间元素所设计的高效率集合
(实际上ArrayList还是比较实用)
★HashSet
防止重复的集合,可快速地找寻相符的元素
★LinkedHashMap
类似HashMap,但可记住元素插入的顺序,也可以
设定成依照元素上次存取的先后来排序。
更多推荐
HeadFirst Java 学习笔记 数据结构2
发布评论