zoukankan      html  css  js  c++  java
  • java培训学习笔记一

    java基础:用Java的io包导出txt文件中的数据,并计算平均成绩,最后将平均成绩写回到txt文件末尾

    txt文件如下:

    张三;59

    李四;60

    王五;90

    赵倩;70       

    具体代码如下:

    package com.sirc.javatrain.lession1;

    import java.io.BufferedReader;
    import java.io.BufferedWriter;
    import java.io.FileNotFoundException;
    import java.io.FileReader;
    import java.io.FileWriter;
    import java.io.IOException;
    import java.io.Reader;
    import java.util.ArrayList;
    import java.util.Collection;
    import java.util.Iterator;
    import java.util.List;
    import java.util.ListIterator;

    public class StatisticsGrade {

     /**
      * @param args
      * @throws IOException
      */
       public static void main(String[] args) throws IOException {
        // TODO Auto-generated method stub
       //调用老师写的方法 
        teach();

       //调用自己写的方法
        //my();
     }
       /*
        * 自己写的代码(存储用类对象)
        */
       public static void my()
       {
          String fileName="F:/Java/lession1/demo/student.txt";
          BufferedReader br = null;
          try {
           br = new BufferedReader(new FileReader(fileName));
          } catch (FileNotFoundException e) {
           // TODO Auto-generated catch block
           e.printStackTrace();
        }

        //实例化学生对象
        List<Student> student=new ArrayList<Student>();

        try {
           String r;
           r = br.readLine(); //读取第一行
      
          Student stu=new Student();
          String[] line=new String[2];
          while(r!=null){
           line = r.split(";");
           stu.setName(line[0]);
           stu.setGrade(line[1]);
           student.add(stu);
           r=br.readLine();//读取下一行
        }

        int gradeSum=0;
      
        for (Student student2 : student) {
         if(student2!=null)
           gradeSum+=Integer.parseInt(student2.getGrade());
        }
        int count=student.size();
        double avg=gradeSum/count;
      
        System.out.println("总成绩" + gradeSum);
        System.out.println("平均值:" + avg);
      
          BufferedWriter writer=new BufferedWriter(new FileWriter(fileName,true));
          writer.newLine();
        writer.write("平均成绩;"+String.valueOf(avg));  
      
          if(writer!=null){
         writer.close();
        }
        } catch (IOException e) {
         // TODO Auto-generated catch block
         e.printStackTrace();
        }

       }
     /*
      * 老师写的代码
      */
     public static void teach() throws IOException{
      String fileName="F:/Java/lession1/demo/student.txt";
      //通过路径读取文件
      BufferedReader reader=new BufferedReader(new FileReader(fileName));
      //定义行数
      String content=null;
      int count=0;
      int chengji=0;  //平均成绩
      int chengjiAll=0; //总成绩
      content=reader.readLine(); //读取txt文件第一行
      //循环读取txt文件每一行,并解析打印出来
      while (content!=null) {
       String[] tmpArray=content.split(";");
       chengji=Integer.parseInt(tmpArray[1]);
       System.out.println(tmpArray[0]+":"+tmpArray[1]);
       chengjiAll+=chengji;
       count++;
       content=reader.readLine();
      }
      
      double avg=chengjiAll/count;
      System.out.println(chengjiAll);
      System.out.println("平均成绩:"+avg);
      //关闭读出流
      if(reader!=null)
      {
       reader.close();
      }
      //定义写入流,写入到文件的末尾
      BufferedWriter writer=new BufferedWriter(new FileWriter(fileName,true)); 
      //换行
      writer.newLine();
      writer.write("平均成绩;"+String.valueOf(avg)); 
      //关闭写入流
      if(writer!=null){
       writer.close();
      }
     }

    }

    学生对象类:

    package com.sirc.javatrain.lession1;

    public class Student {

     /**
      * @param args
      */
     private String name;
     private String grade;
     public void setName(String name) {
      this.name = name;
     }
     public String getName() {
      return name;
     }
     public void setGrade(String grade) {
      this.grade = grade;
     }
     public String getGrade() {
      return grade;
     }
    }

  • 相关阅读:
    SpringMVC框架学习笔记(一)
    Spring框架学习笔记(四)
    Spring框架学习笔记(三)
    Spring框架学习笔记(二)
    Spring框架学习笔记(一)
    单点登录与权限管理本质:cookie安全问题
    单点登录与权限管理本质:单点登录介绍
    单点登录与权限管理本质:HTTP重定向
    单点登录与权限管理本质:session和cookie介绍
    「单点登录与权限管理」系列概述
  • 原文地址:https://www.cnblogs.com/gisdream/p/1876555.html
Copyright © 2011-2022 走看看