import java.io.*;
import java.util.*;
class Person{
public String name;
public int salary;
public Person(String name, int salary) {
this.name = name; 
this.salary = salary;
}
}
public class Test {
public static void main(String[] args) {
FileReader fr = null;
FileWriter fw = null;
ArrayList c  = new ArrayList();

int i = 0;
int j = 0;

String save;
String[] temp;

try{
fr = new FileReader("C:\\test\\source.txt");
//LineNumberReader br = new LineNumberReader(fr);
BufferedReader br = new BufferedReader(fr);
while ((save = br.readLine()) != null) {
temp = save.split(" ");
c.add(new Person(temp[0], Integer.parseInt(temp[1])));
//Collections.sort(c);
Person[] p = new Person[1];
//Arrays.sort(p);
}
}catch(FileNotFoundException e){
System.out.println("文件打开失败!");
System.exit(-1);
//br.close();
}catch (IOException e) {
      System.out.println("文件读取错误!");
      System.exit(-1);
     
                       System.exit(-1);


}
}
javastring

解决方案 »

  1.   

    java.util.Connections.sort(List list,Comparator a )
    Person实现Comparable接口就好了
      

  2.   

    2种方法一:使用内部排序器.Person类实现compable接口则可以实现Collections.sort(c);的排序
    方法二:使用外部排序器:定义一个专门的排序类实现compator接口然后调用Collections.sort(集合,外部排序器);
    建议使用外部排序器,可以方便灵活的换。
      

  3.   

    菜鸟新学JAVA,类有点看不明白,能帮我写下toCompare里怎么写吗?先结贴了,感谢!