【Java实例-简易计算机】使用Java实现简单的计算机案例

第一个案例我决定做一个简单的"简易计算器",来开启编程之旅。为什么我会选择这个案例来作为第一个Java案例呢?大家可别小看这个小小的计算器,它既简单又实用。通过这个案例,大家可以学会或着练习如何处理用户输入、如何实现基本的逻辑运算,以及如何在控制台上输出结果。更重要的是,这个案例能够让你快速上手,在短时间内可以看到自己的成果,从而增强学习的信心和动力。无论你是编程新手,还是想要复习Java基础的开发者,都希望这篇文章能带给大家收获。

该文章的目录:

  1. 设计的思路

  2. 关键知识点

  3. 完整代码

  4. 测试和运行

原创详细文章和代码:biguyu.top/article/det...

原创-谷宇博客:biguyu.top/home

一. 设计的思路

(1) 用户启动程序后,将看到一个菜单,可选择"1.启动计算机"进入计算器功能,或选择"0.退出"结束程序。选择"1"后,用户需依次输入两个数字(支持小数)和一个运算符(+、-、*、/),程序将根据输入执行相应运算并输出结果。若输入不符合要求,程序会提示错误信息。

(2) 程序分为两个主要部分: ① 主方法(main):负责显示菜单并根据用户选择调用计算方法。 ② 计算方法(count):负责接收用户输入的数字和运算符,并进行计算。

二. 关键知识点

(1) 打印:System.out.println();

(2) 变量的声明、赋值和使用。

(3) 创建Scanner对象,接收用户输入:Scanner input = new Scanner(System.in);

(4) 验证用户输入:hasNextInt()、hasNextFloat()和hasNext()。

(5) 简单运算符(+,-,*,/)的使用。

(6) 控制流语句if、if else和 else的使用。

三. 完整代码

ini 复制代码
package com.simple;

import java.util.Scanner;
/**
 * 简易计算机
 * **/
public class Play {

    public static void main(String[] args) {
        //变量 i 用于保存菜单选项
        int i = 0;
        //打印第一级菜单
        System.out.print("----------------\n");
        System.out.println("1.启动计算机");
        System.out.println("0.退出");
        System.out.print("----------------\n");
        System.out.print("请输入编号:");

        //声明Scanner类,用于接收屏幕用户输入
        Scanner input = new Scanner(System.in);
        //判断用户输入的是否为整数(如果输入的非整数,变量会为数据类型的默认值。比如:int类型,用户输入'f',变量会赋值为默认值0)
        if(input.hasNextInt()) {
            //如果输入的是整数,赋值给 i 变量
            i = input.nextInt();
            if(i == 1) {
                //判断如果用户输入的是 1,则进入方法
                count();
            }
        } else {
            System.out.println("输入的不是整数!");
        }
    }

    //计算方法
    public static void count() {
        //声明浮点型,接收用户输入的第一个数。(使用浮点型是因为用户可能会输入小数)
        float a1 = 0.0f;
        //声明用户输入的第二个数
        float a2 = 0.0f;
        //声明用户输入的运算符号(+,-,*,/)
        char s;
        //保存计算的结果值
        float result = 0.0f;

        //创建Scanner类,接收用户的输入。
        System.out.print("请输入第一个数字:");
        Scanner inputA1 = new Scanner(System.in);
        //判断用户输入的是否为浮点型
        if(inputA1.hasNextFloat()){
            //接收用户输入的数字,保存到 a1 变量
            a1 = inputA1.nextFloat();
        } else {
            System.out.println("输入的不是浮点型!");
        }

        //同上
        System.out.print("请输入第二个数字:");
        Scanner inputA2 = new Scanner(System.in);
        if(inputA2.hasNextFloat()){
            //接收用户输入的数字,保存到 a2 变量
            a2 = inputA2.nextFloat();
        } else {
            System.out.println("输入的不是浮点型!");
        }

        //创建Scanner类,接收用户输入的运算符号。
        System.out.print("请输入运算符(+,-,*,/):");
        Scanner input = new Scanner(System.in);
        if(input.hasNext()) {
            //在scanner对象中,没有char单字符的输入,所以我们允许用户输入字符串,然后只获取字符串的第一个字符来进行比较
            s = input.next().charAt(0);
            //计算结果后,把结果保存到result变量
            if(s == '+') {
                result = a1 + a2;
            } else if(s == '-') {
                result = a1 - a2;
            } else if(s == '*') {
                result = a1 * a2;
            } else if(s == '/') {
                result = a1 / a2;
            } else {
                System.out.println("输入的运算符不正确");
            }
            //输出结果
            System.out.println("运算结果:" + result);
        } else {
            System.out.println("输入的不是字符串!");
        }
    }
}

四. 测试和运行

Java案例测试和运行成功,表明代码逻辑正确,功能实现符合预期

相关推荐
还是鼠鼠3 分钟前
单元测试-概述&入门
java·开发语言·后端·单元测试·log4j·maven
MyikJ2 小时前
Java求职面试:从Spring到微服务的技术挑战
java·数据库·spring boot·spring cloud·微服务·orm·面试技巧
MyikJ2 小时前
Java 面试实录:从Spring到微服务的技术探讨
java·spring boot·微服务·kafka·spring security·grafana·prometheus
ShiinaMashirol3 小时前
代码随想录打卡|Day50 图论(拓扑排序精讲 、dijkstra(朴素版)精讲 )
java·图论
cui_hao_nan3 小时前
Nacos实战——动态 IP 黑名单过滤
java
惜.己3 小时前
MySql(十一)
java·javascript·数据库
10000hours3 小时前
【存储基础】NUMA架构
java·开发语言·架构
伍六星4 小时前
动态拼接内容
java·jsp
TeamDev5 小时前
从 SWT Browser 迁移到 JxBrowser
java·前端·eclipse
迢迢星万里灬5 小时前
Java求职者面试指南:DevOps技术栈深度解析
java·ci/cd·docker·kubernetes·jenkins·devops