当前位置: 首页 > news >正文

使用Java实现简单的计算机案例

使用Java实现简单的计算机案例

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

该文章的目录:

1. 设计的思路

2. 关键知识点

3. 完整代码

4. 测试和运行


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

一. 设计的思路

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

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

二. 关键知识点

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

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

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

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

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

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

三. 完整代码

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

相关文章:

  • 系统是win11+两个ubuntu,ubuntu20.04和ubuntu22.04,想删除ubuntu20.04且不用保留数据
  • 数据库运维管理系统在AI方向的实践
  • 【Github/Gitee Webhook触发自动部署-Jenkins】
  • 实现MPC钱包
  • [蓝桥杯]拉马车
  • Qt程序添加调试输出窗口:CONFIG += console
  • 设计模式——简单工厂模式(创建型)
  • 免费且好用的PDF水印添加工具
  • Namespace 命名空间的使用
  • PDFGear——完全免费且功能强大的PDF处理软件
  • AI与智能驾驶的关系和原理:技术融合与未来展望-优雅草卓伊凡一、AI大模型基础原理与智能驾驶
  • 经济法-7-上市公司首次发行、配股增发条件
  • org.junit.runners.model.InvalidTestClassError:此类问题的解决
  • 在 ABP VNext 中集成 Serilog:打造可观测、结构化日志系统
  • Python实现P-PSO优化算法优化循环神经网络LSTM回归模型项目实战
  • 【EF Core】 EF Core 批量操作的进化之路——从传统变更跟踪到无跟踪更新
  • 用 Spring Boot 静态资源映射 vs 用 Nginx 提供静态文件服务总结
  • .net Avalonia 在centos部署
  • AR测量工具:精准测量,多功能集成
  • 寒假学习笔记【匠心制作,图文并茂】——1.20拓扑、强连通分量、缩点
  • vps做网站/怎么自己建网站
  • 家用电脑可以做网站服务器/最近有哪些新闻
  • 定制旅游网站建设成都/google seo怎么优化
  • 沈阳企业建站系统模板/今日重大新闻
  • 青岛谁做网站多少钱/网络营销策划书1000字
  • 网站建设成都公司/沈阳市网站