Sorting Lists2
来源:互联网 发布:广告公司设计软件 编辑:程序博客网 时间:2024/06/06 09:05
package naturalsorting;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.List;
import java.util.Set;
import java.util.TreeSet;
class Person implements Comparable {
private String name;
public Person(String name) { this.name = name;}@Overridepublic int compareTo(Person person) { if (name.length() > person.name.length()) return 1; else if (name.length() < person.name.length()) return -1; return name.compareTo(person.name);}public String toString() { return "Person [name=" + name + "]";}
}
public class App {
public static void main(String[] args) { List<Person> list = new ArrayList<>(); Set<Person> set = new TreeSet<>(); add(list); add(set); System.out.println(list); System.out.println(set); Collections.sort(list); System.out.println(list); System.out.println(set);}private static void add(Collection<Person> collection) { collection.add(new Person("Mark")); collection.add(new Person("John")); collection.add(new Person("Sarah"));}
}
如果想调用Collections这个类,像类似于String和Integer那样排序的话,需要在自定义的类中使用泛型,也就是一个接口,这个接口是Comparable<>,它与Comparator<>,没有很大的区别,只不过是其中的函数参数个数不同,导致Comparator<>需要单独创建一个类来使用。
所有的容器都是Collection这个“父类”的“子类”。这样说并不准确,因为Collection<>是一个接口,是泛型,但是初学时,感觉这种关系类似与Object类与其他所有类的关系。
0 0
- Sorting Lists2
- Sorting
- Sorting:
- Sorting
- Sorting
- Sorting
- Sorting
- Sorting
- GridView sorting
- java sorting
- java sorting
- insert-sorting
- DNA Sorting
- DNA Sorting
- Sorting Algorithms
- DNA Sorting
- DNA Sorting
- DNA Sorting
- 终于舒了一口气
- Top 10 Linux console application…
- 几个开源协议的简要介绍
- Nine Million Bicycles
- VS .NET SUTDIO install CONFIG
- Sorting Lists2
- HttpClient的应用1
- Configure MS SQL Server 2005 Rem…
- 黑马程序员----Objective-C学习笔记之类的本质与SEL类型
- 找回丢失的“显示桌面”图标
- 找回丢失的“显示桌面”图标
- clipMarkTest
- 待机与休眠的区别
- Square开源Viewfinder,25万行代码全公布