Java 对特定类使用Collection.sort时出现语法错误
我是一个java初学者,在使用Collection.sort时遇到了一个问题,我在这里已经回答了超过15个问题,并且理解了主要思想,但是我仍然被一些东西卡住了。 首先是一点背景知识,我用它对特定类的arraylist进行排序,我想按名称对它进行排序。我需要创建一个地址簿,这个类是这样的:Java 对特定类使用Collection.sort时出现语法错误,java,sorting,collections,Java,Sorting,Collections,我是一个java初学者,在使用Collection.sort时遇到了一个问题,我在这里已经回答了超过15个问题,并且理解了主要思想,但是我仍然被一些东西卡住了。 首先是一点背景知识,我用它对特定类的arraylist进行排序,我想按名称对它进行排序。我需要创建一个地址簿,这个类是这样的: public class Contact { private String name; private String email; private String phone; private String ad
public class Contact {
private String name;
private String email;
private String phone;
private String address;
这是我在这里寻找比较器时得到的
public static class ContactComparator implements Comparator<Contact> {
@Override
public int compare(Contact first, Contact second) {
int f = first.getName().compareTo(second.getName());
return f;
}
}
这就是它给我的问题:
怎么了?我就是找不到
非常感谢大家的帮助 您应该从其他方法调用comparator方法,我认为您没有这样做 像下面
method(){
//call for comparison
}
您正在直接尝试从类中调用它。您对比较的调用不应该在contactComprator类中,应该在某个方法中,而不是“公开”,java不知道如何处理它,python可以(例如)但不是java。您隐藏了导致错误的实际行。您需要将此语句放在一个方法或初始值设定项块中。可能您正在使用thank you,您就快到了,我将用于排序的命令移到了将我的人员添加到列表中的方法
method(){
//call for comparison
}