CS61b lab1代码实现及运行结果

task1:程序是已经给好的,放到编译器里找出了几处错误就能运行了,运行结果如图:

task2:不知道它这个lab中说的EMAC是什么,只能在eclipese上简单的写了个排序的程序,任务的要求是根据surname排序,不过鉴于surnname是先出现的,简化起见就

没有区分surnname和Given Name,把两个合在一个String里一起排序了。代码如下:

import java.io.*;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Comparator;
import java.util.List;
class StringComparator<String>implements Comparator<String>{

public int compare(String s1, String s2) {
return ((java.lang.String) s1).compareTo((java.lang.String) s2);
}

}//建立比较器
public class RosterSort {
public static void main(String[]args) throws IOException{
File file=new File("C://Users/acer/Desktop/Roster.txt");
BufferedReader reader=new BufferedReader(new FileReader(file));
List<String>b=new ArrayList<String>();
while(reader.ready()){
b.add(reader.readLine());
}
reader.close();//读取Roster.txt
b.sort(new StringComparator());
BufferedWriter writer=new BufferedWriter(new FileWriter(new File("C://Users/acer/Desktop/SortedRoster.txt")));
for(int i=0;i<b.size();i++){
writer.write(b.get(i)+"\r\n");
}
writer.close();//输出排列好的文件 SortedRoster.txt

}
}

 

 

运行结果:

转载于:https://www.cnblogs.com/lyz1995/p/7143555.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值