黑马程序员技术交流社区
标题:
求解惑啊
[打印本页]
作者:
田宇鹤
时间:
2012-12-1 00:13
标题:
求解惑啊
package IOtest;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Comparator;
import java.util.Iterator;
import java.util.TreeSet;
//5:有三个学生,每个学生有3门课的成绩,从键盘输入以上数据(姓名,三门课成绩),
//按照总成绩的排序,最后把排序后的数据写入文件。
//s1 70 90 80
//s2 75 95 98
//s3 98 78 80
//
//s1
//s3
//s2
//
//思路:
// A:定义学生类
// B:录入3个学生,把学生存储到TreeSet集合。
// C:对TreeSet集合中的元素按照你的想法排序。
// D:把TreeSet集合中的数据遍历写入到文本文件。
public class Test {
public static void main(String[] args) throws IOException {
BufferedWriter bw = new BufferedWriter(new FileWriter("h.txt"));
TreeSet<Student> tm = new TreeSet<Student>(new Comparator<Student>() {
public int compare(Student st1, Student st2) {
int num = (st1.getSx() + st1.getYw() + st1.getYy())
- (st2.getSx() + st2.getYw() + st2.getYy());
return num;
}
});
Student s1 = new Student("s1", 70, 90, 80);
Student s2 = new Student("s2", 75, 95, 98);
Student s3 = new Student("s3", 98, 78, 80);
tm.add(s1);
tm.add(s2);
tm.add(s3);
Iterator<Student> it = tm.iterator();
while (it.hasNext()) {
Student s = it.next();
System.out.println(s);
// w.write(s);
// bw.write(s);
// bw.flush();
// fw.close();
}
}
}
怎么打印成.txt文件啊 没有思路了....是不是应该吧Student转换成String的啊
作者:
程宏志
时间:
2012-12-1 03:43
Student s = it.next();
System.out.println(s);
在这个地方是关键,如果你Student类中有覆写了tostring方法的话,可以这样的写,如果没有,你需要通过get来获取,这样在write中一起写出来就行
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2