定义一个文件,Reader and Writer内容,查询出其中的内容用StringBuffer操作 获取最大值最小值

版权声明:如需转载,请务必通知! https://blog.csdn.net/qq_39594542/article/details/85161502

public static void main(String[] args) throws Exception {
//读
BufferedReader du = new BufferedReader(new InputStreamReader(new FileInputStream(“D://filetest.txt”)));

    //写
    BufferedWriter xie = new BufferedWriter(new OutputStreamWriter(new FileOutputStream("D://filetest.txt")));

    //对字符串操作 用StringBuffer
    //创建StringBuffer 对象
    StringBuffer stringBuffer = new StringBuffer();
    //定义一个变量  用来判断是否和获取到的内容一致
    String stringname = null;
    //写到指定文件
    for (int i = 0 ; i <5000; i++){
        int num = (int) (Math.random()*10000);
       xie.write(String.valueOf(num)+",");
    }
    //判断 如果指定文件的内容不为空 就放到StringBuffer 里进行操作
   while((stringname=du.readLine())!=null){
        stringBuffer.append(stringname+",");
   }
   //到上面一步已经获取到文件内容放到StringBuffer中
    //然后开始对缓存区的内容进行分割split
    //分割好以后就可以对内容进行排序 查询 等
    String[] split = stringBuffer.toString().split(",");
    //把分割好的字符串放到List集合中
    MyArrayList<Integer> list = new MyArrayList<Integer>();
   for (int i = 0;i<split.length;i++){
       //因为分割好以后的数据都是String类型的所以在这里转换下类型
       //Integer.parseInt
       list.add(Integer.parseInt(split[i]));
   }
   int min =(int) list.get(0);
   int max= (int)list.get(0);
   for (int i = 0 ;i <list.size(); i++){
       if(min>(int)list.get(i)){
           min=(int)list.get(i);
       }
       if(max<(int)list.get(i)){
           max=(int)list.get(i);
       }
   }
    System.out.println("当前最大值为"+max+"最小值为:"+min);

    for(int i = 0;i<list.size();i++){
        System.out.println(list.get(i));
    }

    xie.flush();
    xie.close();
}

猜你喜欢

转载自blog.csdn.net/qq_39594542/article/details/85161502
今日推荐