JAVA编程学习记录-流对象的练习
发布日期:2021-07-23 18:13:35 浏览次数:2 分类:技术文章

本文共 3888 字,大约阅读时间需要 12 分钟。

Java编程-流对象的练习

1 :键盘录入5个学生信息(姓名,语文成绩,数学成绩,英语成绩),按照总分从高到低存入文本文件

package FileScore;/** * 1 :键盘录入5个学生信息(姓名,语文成绩,数学成绩,英语成绩),按照总分从高到低存入文本文件 */import java.io.BufferedWriter;import java.io.FileWriter;import java.io.IOException;import java.util.Comparator;import java.util.TreeSet;public class FileScoreDemo {	public static void main(String[] args) {		// 创建学生类对象		Student s = new Student();		// 定义TreeSet匿名内部类,重写排序条件		TreeSet
ts = new TreeSet
(new Comparator
() { @Override public int compare(Student o1, Student o2) { // 主要条件为成绩,由高到低 int sum = o2.getSum() - o1.getSum(); // 次要条件为学生姓名,成绩一致,按姓名排序 int sum2 = sum == 0 ? o1.getName().compareTo(o2.getName()) : sum; return sum2; } }); // 遍历获取信息,添加到Set集合中 for (int i = 0; i < 5; i++) { Student s1 = s.getDate(); ts.add(s1); } // try...catch抛出异常 try { // 创建字符缓冲流类对象 BufferedWriter bw = new BufferedWriter(new FileWriter("score.txt")); // 遍历集合,给文件对象写入数据 for (Student stu : ts) { // 写入数据 bw.write("姓名:" + stu.getName() + "语文成绩:" + stu.getChscore() + "数学成绩:" + stu.getMtscore() + "英语成绩:" + stu.getEngscore() + "总分:" + stu.getSum()); bw.newLine(); } bw.close(); } catch (IOException e) { e.printStackTrace(); } }}
package FileScore;import java.util.Scanner;// 学生类public class Student {	private String name;	private int sum;	private int chscore;	private int mtscore;	private int engscore;	public Student() {		super();	}	public Student(String name, int sum, int chscore, int mtscore, int engscore) {		super();		this.name = name;		this.sum = sum;		this.chscore = chscore;		this.mtscore = mtscore;		this.engscore = engscore;	}	public String getName() {		return name;	}	public void setName(String name) {		this.name = name;	}	public int getSum() {		return sum;	}	public void setSum(int sum) {		this.sum = sum;	}	public int getChscore() {		return chscore;	}	public void setChscore(int chscore) {		this.chscore = chscore;	}	public int getMtscore() {		return mtscore;	}	public void setMtscore(int mtscore) {		this.mtscore = mtscore;	}	public int getEngscore() {		return engscore;	}	public void setEngscore(int engscore) {		this.engscore = engscore;	}	// 获取学生数据的方法	public Student getDate() {		// 创建键盘录入对象,获取学生数据		Scanner sc = new Scanner(System.in);		System.out.println("请依次输入学生姓名、语文成绩、数学成绩、英语成绩:");		System.out.println("请输入姓名:");		String n = sc.nextLine();		System.out.println("请输入语文成绩:");		int ch = sc.nextInt();		System.out.println("请输入数学成绩:");		int mt = sc.nextInt();		System.out.println("请输入英语成绩:");		int eng = sc.nextInt();		int sum = ch + mt + eng;		Student stu = new Student(n, sum, ch, mt, eng);		return stu;	}}

2: 已知s.txt文件中有这样的一个字符串:“hcexfgijkamdnoqrzstuvwybpl”

  请编写程序读取数据内容,把数据排序后写入ss.txt中。

package ReadFile;/** * 已知s.txt文件中有这样的一个字符串:“hcexfgijkamdnoqrzstuvwybpl” * 请编写程序读取数据内容,把数据排序后写入ss.txt中。 */import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.FileReader;import java.io.FileWriter;import java.io.IOException;import java.util.ArrayList;import java.util.Arrays;public class ReadFile {	public static void main(String[] args) {		// 创建ArrayList集合对象接收文件数据		ArrayList
arr = new ArrayList
(); // try...catch抛出异常 try { // 创建字符缓冲输入流类对象 BufferedReader br = new BufferedReader(new FileReader("num2test.txt")); // 获取文件内容,传递给字符串s String s = br.readLine(); // 将字符串转字符数组并排序 char[] ch = s.toCharArray(); Arrays.sort(ch); // 用匿名对象将数组转为字符串,顺便转个大写 arr.add(new String(ch).toUpperCase()); // 关闭流对象 br.close(); } catch (IOException e) { e.printStackTrace(); } // 遍历集合检测是否成功排序添加 for (int i = 0; i < arr.size(); i++) { System.out.println(arr.get(i)); } // try...catch抛出异常 try { // 创建字符缓冲输出流对象 BufferedWriter bw = new BufferedWriter(new FileWriter("ss.txt")); // 遍历写入数据 for (String s : arr) { bw.write(s); } // 关闭流对象 bw.close(); } catch (IOException e) { e.printStackTrace(); } }}

 

 

 

转载地址:https://blog.csdn.net/otmqixi/article/details/80427567 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:JavaWeb部分-猜拳小游戏
下一篇:JAVA编程学习记录-不死神兔和文件操作练习

发表评论

最新留言

能坚持,总会有不一样的收获!
[***.219.124.196]2024年03月31日 23时56分52秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章