zoukankan      html  css  js  c++  java
  • 第一次Java测试及感触

         周四进行了java测试,感触很深,测试的题目是用Java实现一个ATM机的管理系统。最后3个小时后,我没有完成这次测试,但是我找到了自己的很多不足,明确了自己的问题究竟在哪里。
    关于这次测试我不会的最大问题是关于文件读写操作模拟数据库,其实好像从C语言开始,我对文件就不怎么会用,然后到了C++,现在的java,我依旧还是不太会用,这个问题真的很严重,它反映出我从来没有真正地去把文件操作弄懂学会,导致现在,,,测试结束以后,我从网上学习了java文件操作,下面这是一个文件写入模块和文件读写模块
    1.public static void printFile(String content) {
    BufferedWriter bw = null;
    try {
    File file = new File("D:/filename.txt");
    if (!file.exists()) {
    file.createNewFile();
    }
    FileWriter fw = new FileWriter(file.getAbsoluteFile());
    bw = new BufferedWriter(fw);
    bw.write(content);
    bw.close();
    } catch (IOException e) {
    e.printStackTrace();
    }
    2.BufferedReader、BufferedWriter(缓存流,提供readLine方法读取一行文本)
         //读取文件(字符流)
            BufferedReader in = new BufferedReader(new InputStreamReader(new FileInputStream("d:\1.txt"),"GBK"));#这里主要是涉及中文
            //BufferedReader in = new BufferedReader(new FileReader("d:\1.txt")));
            //写入相应的文件
            BufferedWriter out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream("d:\2.txt"),"GBK"));
            //BufferedWriter out = new BufferedWriter(new FileWriter("d:\2.txt"));
            //读取数据
            //循环取出数据
            String str = null;
            while ((str = in.readLine()) != null) {
                System.out.println(str);
                //写入相关文件
                out.write(str);
                out.newLine();
            }
            //清楚缓存
            out.flush();
            //关闭流
            in.close();
            out.close();
    并且我还了解了GBK与UTF-8以及他们的区别
    GBK包含全部中文字符;UTF-8则包含全世界所有国家需要用到的字符。
    GBK是在国家标准GB2312基础上扩容后兼容GB2312的标准(好像还不是国家标准)
    UTF-8编码的文字可以在各国各种支持UTF8字符集的浏览器上显示。
    文件读写有多种方式,我觉得如果我想要熟练掌握,就必须针对性地多加练习
          还有一个问题就是,我不会把复杂问题简单化,将那些问题按模块儿分别去实现,记得我当时第一次看见这个庞大的问题的时候真的被吓住了,无从下手,我不知道该从哪儿开始做起,感觉自己哪儿也不会,就很懵的感觉,导致在最后的时候,我甚至想放弃了,于是我只写界面,什么操作也不去想,最后做得一塌糊涂,分数自然很低。其实如果自己那个时候哪怕之前不会,就在测试的时候开始学习如何用文件操作并且调用get()和set()方法,一定能学会很多东西,也不至于最后什么也写不出来。
             另外,当时对界面的如何跳转,也特别懵,现在想想,其实也就是不同部分界面函数的调用,此外还有像是关于Java的输入,Scanner与Bufferedreader的区别,我不知道输入的时候该去用哪儿个,java.util.Scanner类是一个简单的文本扫描类,它可以解析基本数据类型和字符串。它本质上是使用正则表达式去读取不同的数据类型。然而,Scanner读取数据是按空格符,这其中包括空格键,Tab键,Enter键。只要遇到其中之一,Scanner的方法就会返回下一个输入 ,这也就是我们会面临的另一个问题,当我们的输入数据中有空格时,我们就不会得到我们想要的数据,这样我们就要考虑到BufferReader来读取数据啦!Java.io.BufferedReader类为了能够高效的读取字符序列,从字符输入流和字符缓冲区读取文本。

    这次测试暴露了自己很多问题,也反映了自己平常对基础知识掌握的不扎实,接下来的我需要用心去学好每一个知识点。最后,就是,发现了问题就需要去改正,然后接下来我就需要把这个代码重做一遍,看看自己是否真的学会了这些东西。





  • 相关阅读:
    HDU 3081 Marriage Match II
    HDU 4292 Food
    HDU 4322 Candy
    HDU 4183 Pahom on Water
    POJ 1966 Cable TV Network
    HDU 3605 Escape
    HDU 3338 Kakuro Extension
    HDU 3572 Task Schedule
    HDU 3998 Sequence
    Burning Midnight Oil
  • 原文地址:https://www.cnblogs.com/zzstdruan1707-4/p/9692302.html
Copyright © 2011-2022 走看看