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匿名内部类,重写排序条件 TreeSetts = 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集合对象接收文件数据 ArrayListarr = 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 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
能坚持,总会有不一样的收获!
[***.219.124.196]2024年03月31日 23时56分52秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
初学python100例-案例30 计算闰年 少儿编程案例讲解
2019-04-28
Scratch螺旋多边形小游戏 蓝桥杯Scratch国赛真题答案和解析
2019-04-28
初学python100例-案例31 输入星期几的第一个字母判断是星期几 少儿编程案例讲解
2019-04-28
初学python100例-案例32 男孩女孩小孩人数 少儿编程案例讲解
2019-04-28
【蓝桥杯真题12】Scratch角色装扮 少儿编程scratch蓝桥杯选拔赛真题讲解
2019-04-28
毕业设计 C#开发实现影院信息管理商城系统 毕业论文【论文+源程序+数据库】
2019-04-28
电子学会图形化scratch编程等级考试二级真题答案解析(判断)2020-9
2019-04-28
java SPI 与cooma(dubbo 微容器改良品)--1
2019-04-28
安全合规--49--基于国内法律法规的企业数据合规体系建设经验总结(八)
2019-04-28
Python3开发--25--Django项目的数据模型搭建与使用
2019-04-28
Python3开发--26--Django项目的业务数据处理
2019-04-28
web渗透--1--web安全原则(上)
2019-04-28
web渗透--3--web渗透测试清单
2019-04-28
web渗透--4--自动化漏洞扫描
2019-04-28
CTF_EXP04:2017 赛客夏令营 Web-random
2019-04-28
CTF_EXP02:XCTF PHP2
2019-04-28
CTF_EXP03: [SUCTF 2019] EasySQL
2019-04-28
BUUCTF [极客大挑战 2019] BuyFlag
2019-04-28
BUUCTF [极客大挑战 2019] Secret File
2019-04-28