我有一个像这样的自定义对象:
Linkedlist<ClassInfo> classes = new LinkedList<ClassInfo>();
其中有教师姓名、类(class)名称、房间号等的访问器。这些都是字符串。我遇到过这样的情况:LinkedList 中的数据需要通过不同的参数(即教师姓名、类(class)名称、房间号等)显示。
任何人都可以提供如何快速实现此操作的方法吗?如果我使用 Compartor 接口(interface),我如何能够告诉它按哪个字符串字段对列表进行排序?我的研究还引导我找到了 Collator,我想知道这是否有用。
感谢任何帮助。
最佳答案
为每个字段编写不同的Comparator
实现:
Comparator<ClassInfo> CLASS_NAME_COMPARATOR = new Comparator<ClassInfo>() {
public int compare(ClassInfo class1, ClassInfo class2) {
return class1.getClassName().compareTo(class2.getClassName());
}
};
... // implementations for other fields
...然后根据合适的比较器进行排序:
Collections.sort(classes, CLASS_NAME_COMPARATOR);
关于java - Java中多个字符串比较LinkedList,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14818117/