我正在尝试对文本文件中的数据进行排序。文件的每一行都包含以下字段:

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类中。

09-30 18:37