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

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

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);
    }
}

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

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

相关推荐
_oP_i11 分钟前
Pinpoint 是一个开源的分布式追踪系统
java·分布式·开源
mmsx14 分钟前
android sqlite 数据库简单封装示例(java)
android·java·数据库
武子康40 分钟前
大数据-258 离线数仓 - Griffin架构 配置安装 Livy 架构设计 解压配置 Hadoop Hive
java·大数据·数据仓库·hive·hadoop·架构
豪宇刘2 小时前
MyBatis的面试题以及详细解答二
java·servlet·tomcat
2301_819287122 小时前
ce第六次作业
linux·运维·服务器·网络
秋恬意2 小时前
Mybatis能执行一对一、一对多的关联查询吗?都有哪些实现方式,以及它们之间的区别
java·数据库·mybatis
m0_748247552 小时前
Web 应用项目开发全流程解析与实战经验分享
开发语言·前端·php
武汉联从信息2 小时前
如何使用linux日志管理工具来管理oracle osb服务器日志文件?
linux·运维·服务器
天天进步20152 小时前
STUN服务器实现NAT穿透
运维·服务器
月如琉璃2 小时前
1.gitlab 服务器搭建流程
服务器·gitlab