我正在尝试对文本文件中的数据进行排序。文件的每一行包含字段:
name,surname,age,weight,height
我尝试使用 Peter Dolberg's Java code 来分割每一行- 但它不适用于重复的键。我能做什么呢?
最佳答案
简单的方法是创建一个类,例如PersonalInfo,其中包含实例变量名称、姓氏、年龄、体重、高度。还编写它们的 getter 和 setter 方法。
然后创建一个 PersonalInfo 对象数组(通过从文件中读取)。
PersonalInfo employeeInfo[] = new PersonalInfo[3];
然后根据您想要比较的基础定义一个比较器。例如年龄 -
class AgeComparator implements Comparator{
public int compare(Object ob1, Object ob2){
int ob1Age = ((PersonalInfo)ob1).getAge();
int ob2Age = ((PersonalInfo)ob2).getAge();
if(ob1Age > ob2Age)
return 1;
else if(ob1Age < ob2Age)
return -1;
else
return 0;
}
}
然后您可以简单地使用此比较器对数据进行排序。
Arrays.sort(employeeInfo, new AgeComparator());
如果您希望考虑所有因素对数据进行排序,那么您可以将该逻辑添加到您的 Comparator 类中。
关于java - 如何使用Java对文本文件中的数据进行排序?第 2 卷,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16632653/