java计算器 控制台_java实现简单的控制台的计算器

要用面向对象的思维写。

//我是代码的搬运工

import java.util.Scanner;

public class Main {

public static void main(String[] args) {

Number number = new Number();

while (true) {

if (number.toOutPut()) {

} else {

System.out.println("欢迎下次使用!!!");

}

}

}

}

// 定义一个Number类,三个字段分别代表第一二手动输入的字段,以及运算符

class Number {

double double1;

double double2;

String sign;

public Number() {

}

public Number(double double1, double double2, String sign) {

this.double1 = double1;

this.double2 = double2;

this.sign = sign;

}

//运算流程-->

static double result(double d1,double d2,String sign) {

//计算结果result1 必须设一个值不然报错

double result1 = 0;

if (sign.equals("+")||sign=="+") {

result1 = d1 + d2;

} else if (sign.equals("-") || sign == "-") {

result1 = d1 - d2;

}

else if (sign.equals("*") || sign == "*") {

result1 = d1 * d2;

}

else if (sign.equals("/") || sign == "/") {

result1 = d1 / d2;

}

else {

//如果不是四则运算我们就设定一个边缘值继而有了如下的操作

result1=1.7e-308;

}

return result1;

}

//

boolean toOutPut() {

System.out.println("亲!请您输入第一个数字哟!!!");

Scanner input = new Scanner(System.in);

double d1 = input.nextDouble();

System.out.println("亲!请您输入运算符:");

String string = input.next();

System.out.println("亲!请您输入第二数字哟!!!");

double d2 = input.nextDouble();

double result = Number.result(d1, d2, string);

String s = String.valueOf(result);

String replace = s.replace(".0", "");

s = replace;

if (result == 1.7e-308) {

System.out.println("计算结果错误,望用户老爷检查");

} else {

System.out.println("计算结果为"+s);

}

System.out.println("是否继续运算, 'Y' or 'y' 继续任意键退出");

String str1= input.next();

if ("Y".equals(str1) || "y".equals(str1)) {

return true;

} else {

return false;

}

}

// 下面都是get or set 方法以及构造方法还有重写的toString()基本

// 上不用管

public double getDouble1() {

return double1;

}

public void setDouble1(double double1) {

this.double1 = double1;

}

public double getDouble2() {

return double2;

}

public void setDouble2(double double2) {

this.double2 = double2;

}

public String getSign() {

return sign;

}

public void setSign(String sign) {

this.sign = sign;

}

@Override

public String toString() {

return "Number{" +

"double1=" + double1 +

", double2=" + double2 +

", sign='" + sign + '\'' +

'}';

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值