【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案例测试和运行成功,表明代码逻辑正确,功能实现符合预期

相关推荐
百锦再4 分钟前
对前后端分离与前后端不分离(通常指服务端渲染)的架构进行全方位的对比分析
java·开发语言·python·架构·eclipse·php·maven
DokiDoki之父20 分钟前
Spring—注解开发
java·后端·spring
CodeCraft Studio1 小时前
【能源与流程工业案例】KBC借助TeeChart 打造工业级数据可视化平台
java·信息可视化·.net·能源·teechart·工业可视化·工业图表
摇滚侠1 小时前
Spring Boot 3零基础教程,WEB 开发 默认页签图标 Favicon 笔记29
java·spring boot·笔记
YSRM1 小时前
Leetcode+Java+图论+最小生成树&拓扑排序
java·leetcode·图论
沐浴露z2 小时前
【JVM】详解 Class类文件的结构
java·jvm·class
桦说编程2 小时前
Java并发编程:两种控制并发度的实现方法及其比较
java·后端
杯莫停丶2 小时前
设计模式之:单例模式
java·单例模式·设计模式
消失的旧时光-19432 小时前
@JvmStatic 的作用
java·开发语言·kotlin