zoukankan      html  css  js  c++  java
  • Java错误记录


    个人错误记录,如果大佬发现我的理解或者表述有错误,烦请指正,不胜感激。欢迎小伙伴的相关分享,向好的方向走一步,就离坏的结果远一步。共勉

    语法错误

    办法
    初期,百度,解决问题,然后记下来,熟能生巧
    后期,啃底层源码,明白实现原理

    程序一直在等待,无法继续进行

    依次输入n个数,不能直接用像if(scan.nextInt() == 25)这样的条件,如果按顺序下来的next int 并不等于25,程序就会一直等待
    解决办法:int m;m = scan.nextInt();用m来判断

    Scanner读取数据不完整

    第一行 输入n(int型),表示下面将输入的n个元素
    第二行 n个元素,以空格隔开
    分别用int n = scan.nextInt();和String s = scan.nextLine();读取第一行的数和第二行的数
    s读取失败,因为nextLine();遇到回车后会停止继续读入,并舍弃换行。应该在n和s之间添加scan.nextLine();吸收掉中间的回车

    数组越界

    比如for循环中存在if(a[i+1] == a[i]+1),当i到最后一个元素时,if条件就会越界。所以声明数组时,应该在原来的长度加一,然后改变for循环的遍历条件i < a.length-1

    new构建数组长度为n的数组a,然后再用a = s.toCharArray();数组a的长度变为字符串s的长度

    字符串未改变

    使用s.replaceFirst();后应该再赋值给s,因为s只是数组的管理者,并不能改变这个数组

    或者改使用StringBuilder

    逻辑错误

    办法
    写代码之前,用思维导图或者其他方式,把程序大致要分成什么部分,分别实现那些功能,特殊情况的处理等,提前想清楚。然后再开始写代码

    记录
    没有考虑到边界值
    陷入死循环

    输出错误

    格式问题,多了空格少了空格,输出顺序
    没有理解题意

    小结

    OJ的题目,要考虑多样例输入的问题Scanner+while(hasNext)
    OJ给的数据都要用到

    向好的方向走一步,就离坏的结果远一步
  • 相关阅读:
    Aras前端的一些知识
    Eclipse 实用快捷键大全
    Eclipse插件使用links目录的用法
    extjs portal 保存 事件
    NDRS SQL
    [VB]修改注册表让程序开机自动运行
    [C++]数组参数
    [C++]指针类型出参
    [C++]函数返回值
    [VBA]Excel输出utf8编码格式文件 使用WideCharToMultiByte
  • 原文地址:https://www.cnblogs.com/PersistLu/p/12608590.html
Copyright © 2011-2022 走看看