不可避免的过程:初学者写的愚蠢代码及其启示

当我刚开始学习编写代码时,我写过一段让我觉得相当愚蠢的代码。以下是一个示例:

java 复制代码
import java.util.Scanner;

public class CircleAreaCalculator {
    public static void main(String[] args) {
        // 愚蠢的代码示例:计算圆的面积

        // 导入数学库
        import java.lang.Math;

        // 创建一个Scanner对象用于接收用户输入
        Scanner scanner = new Scanner(System.in);

        // 获取圆的半径
        System.out.print("请输入圆的半径:");
        double radius = scanner.nextDouble();

        // 计算圆的面积
        double area = Math.PI * radius * radius;

        // 输出结果
        System.out.println("圆的面积为:" + area);
    }
}

以上代码的问题在于,我没有对用户输入进行任何错误处理或验证。如果用户在输入半径时不小心输入了一个非数字的值,程序就会崩溃并抛出一个异常。这种情况下,代码并不具备健壮性和容错性。

此外,我还没有提供任何的提示或说明,告诉用户应该输入什么样的值。这会让用户感到困惑,特别是对于初学者来说。

改进这段代码的方法是添加适当的错误处理和提示信息。以下是改进后的代码示例:

java 复制代码
import java.util.Scanner;

public class CircleAreaCalculator {
    public static void main(String[] args) {
        // 愚蠢的代码示例:计算圆的面积

        // 导入数学库
        import java.lang.Math;

        // 创建一个Scanner对象用于接收用户输入
        Scanner scanner = new Scanner(System.in);

        // 获取圆的半径
        System.out.print("请输入圆的半径:");
        double radius = scanner.nextDouble();

        // 计算圆的面积
        double area = Math.PI * radius * radius;

        // 输出结果
        System.out.println("圆的面积为:" + area);
    }
}

改进后的代码对用户输入进行了验证,如果用户输入的是非数字值,它会提示用户输入一个有效的数字。此外,它还会检查半径是否为非负数,如果用户输入了一个负数,它会要求用户重新输入。这样改进后的代码更加健壮和用户友好。

这个例子展示了我在刚开始学习编写代码时写的一段愚蠢的代码以及如何改进它。通过不断的学习和实践,我逐渐意识到编写健壮和可靠的代码的重要性,并学会了如何处理错误和提供良好的用户体验。这也是编程学习过程中的一个重要教训。

相关推荐
念九_ysl13 分钟前
前端循环全解析:JS/ES/TS 循环写法与实战示例
前端·javascript·typescript
anyup_前端梦工厂2 小时前
了解几个 HTML 标签属性,实现优化页面加载性能
前端·html
小金的学习笔记2 小时前
如何在本地和服务器新建mysql用户和密码
运维·服务器·mysql
EasyNVR3 小时前
EasyRTC智能硬件:实时畅联、沉浸互动、消音护航
运维·服务器·网络·安全·音视频·webrtc·p2p
yngsqq3 小时前
c# —— StringBuilder 类
java·开发语言
前端御书房3 小时前
前端PDF转图片技术调研实战指南:从踩坑到高可用方案的深度解析
前端·javascript
2301_789169543 小时前
angular中使用animation.css实现翻转展示卡片正反两面效果
前端·css·angular.js
星星点点洲3 小时前
【操作幂等和数据一致性】保障业务在MySQL和COS对象存储的一致
java·mysql
xiaolingting3 小时前
JVM层面的JAVA类和实例(Klass-OOP)
java·jvm·oop·klass·instanceklass·class对象
风口上的猪20154 小时前
thingboard告警信息格式美化
java·服务器·前端