所以,我问的是如何根据电影,音乐或书籍在文本文件中排序?
从本质上讲,你不知道。将值加载到内存中,将它们排序并将其保存回文件。
List<String> values = new ArrayList<String>(25);
values.add("Movie Title: The Imitation Game Date & Time: 01/15/2015 08:52:39");
values.add("Music Title: Fly For Your Life Artist: Gunship Date & Time: 01/15/2015 08:52:51)");
values.add("Book Title: Alan Turing: The Enigma Date & Time: 01/15/2015 08:53:05M");
values.add("Music Title: Adagio For Tron Artist: Daft Punk Date & Time: 01/15/2015 08:54:06");
values.add("Music Title: Bad Wings Artist: The Glitch Mob Date & Time: 01/15/2015 08:54:13");
values.add("Movie Title: Rear Window Date & Time: 01/15/2015 08:54:28");
Collections.sort(values, new Comparator<String>() {
@Override
public int compare(String o1, String o2) {
String t1 = o1.substring(0, o1.indexOf(" ")).trim();
String t2 = o2.substring(0, o2.indexOf(" ")).trim();
return t1.compareTo(t2);
}
});
for (String value : values) {
System.out.println(value);
}
,输出...
Book Title: Alan Turing: The Enigma Date & Time: 01/15/2015 08:53:05M
Movie Title: The Imitation Game Date & Time: 01/15/2015 08:52:39
Movie Title: Rear Window Date & Time: 01/15/2015 08:54:28
Music Title: Fly For Your Life Artist: Gunship Date & Time: 01/15/2015 08:52:51)
Music Title: Adagio For Tron Artist: Daft Punk Date & Time: 01/15/2015 08:54:06
Music Title: Bad Wings Artist: The Glitch Mob Date & Time: 01/15/2015 08:54:13
这简直是使用String
S的“自然”排列元素的,如果你想更复杂的东西进行排序,你必须为它编写规则的Comparator
的compare
方法内的Collections
看看,寻找sort
方法和Comparator
更多细节
你可以...
保持在它自己的List
每种类型和保存它们按顺序或有自己的文件中...
你可以...
使用Map
的某种保持样组合在一起的物品......
Map<String, List<String>> mapItems = new HashMap<>();
map.put("Music", new ArrayList<String>(25));
map.get("Music").add("The Imitation Game Date & Time: 01/15/2015 08:52:39");
//...
看看Trail: Collections了解更多详情。
你可以...
硬着头皮试试你的手在使用某种类型的数据库,有一些简单的,单用户的数据库中获得,H2例如,这是一个纯Java数据库。看看JDBC Database Access了解更多详细信息...
无论如何,我会鼓励你设计一个基类或接口来维护基本信息(标题和时间戳的外观),然后创建专业类,比如Music
/Book
/Movie
从它延伸。这将在长期内使管理更容易,因为信息是它自己的容器类型的概念内维持(和允许每个类型的专门化)
我有一些这方面的经验,没有什么专业或广泛的。将它们保存为单独的文件会更容易吗? – Kalkrin
从[Trail:Collections](http://docs.oracle.com/javase/tutorial/collections/)和['Collections']开始(http://docs.oracle.com/javase/7/docs/api /java/util/Collections.html),查找'sort'方法和['Comparator'](http://docs.oracle.com/javase/7/docs/api/java/util/Comparator.html) – MadProgrammer