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 + '\'' +
'}';
}
}
java实现简单的控制台的计算器的更多相关文章
- java实现简单的单点登录
java实现简单的单点登录 摘要:单点登录(SSO)的技术被越来越广泛地运用到各个领域的软件系统当中.本文从业务的角度分析了单点登录的需求和应用领域:从技术本身的角度分析了单点登录技术的内部机制和实现 ...
- java实现打开Windows控制台窗口
在写Python程序的时候突发奇想了一下,能不能用java代码实现打开控制台窗口呢? 经过查询网络资料和java API文档,终于实现了: package com.primeton.cmd; impo ...
- java 模拟简单搜索
Java 模拟简单搜索 实体类 package org.dennisit.entity; /** * * * @version : 1.0 * * @author : 苏若年 <a href=& ...
- 基于《仙剑奇侠传柔情版》利用Java的简单实现(一)
基于<仙剑奇侠传柔情版>利用Java的简单实现(一) 2018-12-01 23:55:36 by Louis 一,新建一个类GameFrame.class,具体代码如下: pack ...
- Java 实现简单的 Socket 通信
Java socket 封装了传输层的实现细节,开发人员可以基于 socket 实现应用层.本文介绍了 Java socket 简单用法. 1. 传输层协议 传输层包含了两种协议,分别是 TCP (T ...
- Java实现简单版SVM
Java实现简单版SVM 近期的图像分类工作要用到latent svm,为了更加深入了解svm,自己动手实现一个简单版的. 之所以说是简单版,由于没实用到拉格朗日,对偶,核函数等等.而 ...
- Java自定义简单标签
Java自定义简单标签可以方便的在页面输出信息,并且对于权限的控制,和对于Jsp标签和servlet代码的分离有着很好的作用. 下面将以权限的控制为例自定义一个标签: 一.标签类型 <wxt: ...
- 主题:Java WebService 简单实例
链接地址:主题:Java WebService 简单实例 http://www.iteye.com/topic/1135747 前言:朋友们开始以下教程前,请先看第五大点的注意事项,以避免不必要 ...
- Java课程设计----仿Windows标准型计算器
JAVA课程设计 仿Windows标准型计算器(By Yanboooooooo) 一.团队介绍: 连燕波[组长]:网络1513学生. 张文博[组员]:网络1513学生. 二.项目git地址 码云项目地 ...
随机推荐
- 用JS实现将十进制转化为二进制
- 阶段1 语言基础+高级_1-3-Java语言高级_04-集合_04 数据结构_3_数据结构_数组
0x代表16进制的地址 arr通过首地址找到存储空间.
- python中有哪些类型的布尔值是False?
1.None 2. False 3.所有的值为零的数 4."" 5.[] 6.() 7.{}
- [LeetCode] 834. Sum of Distances in Tree
LeetCode刷题记录 传送门 Description An undirected, connected treewith N nodes labelled 0...N-1 and N-1 edge ...
- == 和 equals的区别
== 和 equals的区别 基本类型:== 比较的是两个变量的面值大小 对象对象: 比较的是内存地址 特例: String a = "abc" String b = &qu ...
- ElasticSearch 基础 2
================================== 高级查询 =========================== ========== 子条件查询 =========== _sc ...
- Kubernetes kubeadm 安装记录
Kubernetes kubeadm 安装记录 注:比较乱,都是一些预见到的错误 kubernetes yum 源 cat /etc/yum.repos.d/kubernetes.repo [kube ...
- CentOS7 修复MBR引导
为了达到实验目的,首先破坏MBR引导bootloader 重启系统发现系统进不去了,这正是我们想要的 重启进入系统救援模式,输入以下命令重建MBR引导bootloader 重启,可以正常引导进入系统
- ubuntu终端代理之proxychains
命令行代理 安装proxychains sudo apt install proxychains 配置proxychains sudo vim /etc/proxychains.conf 在proxy ...
- 百度文档,用Python一键免费下载
百度文库下载需要券,或者vip才能下载 Vip价格高,偶尔下载一次不划算. 不下载复制?不好意思复制也需要vip否则只能一次复制两行. 如何才能以最低成本获取到百度文库里的文档内容呢? 当然是用Pyt ...