zoukankan      html  css  js  c++  java
  • java实现点名,并记录被点次数


    java实现点名,并记录被点次数

    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    import java.io.PrintStream;
    import java.util.ArrayList;
    import java.util.Scanner;
    
    public class Demoe1 {
    	public static void main(String[] args)throws Exception {
    		File f=new File("src/t7/names.txt");
    		//用于存放读取进来的学生姓名
    		ArrayList<String> nameList=new 
    		ArrayList<String>();
    		//定义用于读取文件的输入流
    		Scanner cin=new Scanner(new 
    				FileInputStream(f));
    		cin.useDelimiter("
    ");
    		//读取学生姓名到集合中
    		while(cin.hasNext()){
    			nameList.add(cin.next());
    		}
    		cin.close();//关闭输入流
    		f.delete();//删除原有的文本文件
    		//用于存储处理后的学生姓名
    		ArrayList<String> resultList=new 
    		ArrayList<String>();
    		for(String s:nameList){
    			//用于去掉回车换行
    			s=s.substring(0,s.length()-1);
    			//把处理后的学生姓名加来新的容器中
    			resultList.add(s+"	"+0);
    		}
    		//定义文件输出流
    		PrintStream ps=new 
    		PrintStream(new 
    				FileOutputStream(f));
    		//把处理之后的学生姓名写到文本文件中
    		for(String s:resultList)
    			ps.println(s);
    		ps.close();//关闭输出流
    	}
    }

    学生姓名和时间

    public class Student {
     private String name;
     private int time;
    
    
     public String getName() {
     return name;
     }
    
    
     public void setName(String name) {
     this.name = name;
     }
    
    
     public int getTime() {
     return time;
     }
    
    
     public void setTime(int time) {
     this.time = time;
     }
    
    
    }
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    import java.io.PrintStream;
    import java.util.ArrayList;
    import java.util.Random;
    import java.util.Scanner;
    
    
    public class RollCall {
     public static void main(String[] args) throws Exception {
     File f = new File("src/t8/names.txt");
     Scanner cin = new Scanner(new FileInputStream(f));
     cin.useDelimiter("
    ");
     // 用于存储学生姓名和被点次数
     ArrayList<Student> sList = new ArrayList<Student>();
     while (cin.hasNext()) {
     String s = cin.next();
     // 用空格把学生姓名和次数他隔开
     String[] ss = s.split("\s+");// 正则
     Student stu = new Student();
     stu.setName(ss[0]);
     // 把字符串类型的次数转换成int类型的次数
     // 并存入Student类的对象中
     stu.setTime(Integer.parseInt(ss[1]));
     sList.add(stu);
     }
     cin.close();
     f.delete();
     // 产生随机下标
     Random r = new Random();
     // 下标的上界为数组的长度
     int i = r.nextInt(sList.size());
     Student student = sList.get(i);
     System.out.println(student.getName());
     // 被点过名的学生,点名次数加1
     sList.get(i).setTime(student.getTime() + 1);
     writeStudent(f,sList);
     }
    
    
     public static void writeStudent(File f, ArrayList<Student> sList)throws Exception {
     // 建立文件输出流
     PrintStream ps = new PrintStream(new FileOutputStream(f));
     for (Student s : sList) {
     // 把学生姓名和被点次数拼成字符串
     String st = s.getName() + "	" + s.getTime();
     // 把学生信息输出到文本文件中
     ps.println(st);
     }
     ps.close();
     }
    }
    
    
     
     
     
    
     
    
    


  • 相关阅读:
    OC字符串处理
    用 map 表达互斥逻辑
    iOS之LLDB调试器
    iOS 线程安全 锁
    OC实现 单向链表
    iOS读取info.plist中的值
    SQLite 如何取出特定部分数据
    UIView常用的一些方法setNeedsDisplay和setNeedsLayout
    xCode常用快捷键
    oppo7.0系统手机(亲测有效)激活Xposed框架的流程
  • 原文地址:https://www.cnblogs.com/pangblog/p/3266667.html
Copyright © 2011-2022 走看看