狂神说JAVA计算器作业全代码,可以多数字任意加减乘除,得结果后可以用运算符继续计算

本文分享了使用Java编程实现的计算器程序,该程序支持多个数字进行加、减、乘、除运算,并能在得出结果后继续进行新的计算。详细代码和逻辑解析帮助理解过程。
package base;

import java.util.Scanner;

public class base18 {
    public static void main(String[] args) {
        Calculator();
    }
    //计算器方法
    public static void Calculator () {
        Scanner scanner = new Scanner(System.in);
        double a =0;
        double sum =0;
        double b =0;
        System.out.println("先输入+-*/来选择你需要的算法,每次输入用回车确认,以=号或任意字母得到结果,得结果后用计算符可以继续计算,如果要关闭计算器请输:exit");
        //如果有字符输入,就运行
        while (scanner.hasNextLine()){
            //把输入的字符保存在S
            String s = scanner.nextLine();
            switch (s){
                case "+"://如果输入+,就运行加法
                    while (scanner.hasNextDouble()){
                        a = scanner.nextDouble();
                        b++;
                        sum+=a;
                        System.out.println("+");
                    }System.out.println(b+"次运算,结果是:"+sum+"请选择运算符继续计算,退出请输入exit");break;
                case "-"://如果输入-,就运行减法
                    while (scanner.hasNextDouble()){
                        a = scanner.nextDouble();
                        b++;
                        if (sum==0){
                            sum=sum+a;}else {
                            sum=sum-a;
                        }
                        System.out.println("-");
                    }
                    System.out.println(b+"次运算,结果是:"+sum+"请选择运算符继续计算,退出请输入exit");break;
                case "*"://如果输入*,就运行乘法
                    while (scanner.hasNextDouble()){
                        a = scanner.nextDouble();
                        b++;
                        if (sum==0){
                            sum=sum+a;}else {
                            sum=sum*a;
                        }
                        System.out.println("*");
                    }
                    System.out.println(b+"次运算,结果是:"+sum+"请选择运算符继续计算,退出请输入exit");break;
                case "/"://如果输入/,就运行除法
                    while (scanner.hasNextDouble()){
                        a = scanner.nextDouble();
                        b++;
                        if (sum==0){
                            sum=sum+a;}else {
                            sum=sum/a;
                        }
                        System.out.println("/"); }
                    System.out.println(b+"次运算,结果是:"+sum+"请选择运算符继续计算,退出请输入exit");break;
            }
            //关闭计算器的代码,原理是打断switch的loop
            if (s.equals("exit")){
                break;
            }}scanner.close();

    }
}

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值