要用面向对象的思维写。

//我是代码的搬运工
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实现简单的控制台的计算器的更多相关文章

  1. java实现简单的单点登录

    java实现简单的单点登录 摘要:单点登录(SSO)的技术被越来越广泛地运用到各个领域的软件系统当中.本文从业务的角度分析了单点登录的需求和应用领域:从技术本身的角度分析了单点登录技术的内部机制和实现 ...

  2. java实现打开Windows控制台窗口

    在写Python程序的时候突发奇想了一下,能不能用java代码实现打开控制台窗口呢? 经过查询网络资料和java API文档,终于实现了: package com.primeton.cmd; impo ...

  3. java 模拟简单搜索

    Java 模拟简单搜索 实体类 package org.dennisit.entity; /** * * * @version : 1.0 * * @author : 苏若年 <a href=& ...

  4. 基于《仙剑奇侠传柔情版》利用Java的简单实现(一)

    基于<仙剑奇侠传柔情版>利用Java的简单实现(一) 2018-12-01 23:55:36   by Louis  一,新建一个类GameFrame.class,具体代码如下: pack ...

  5. Java 实现简单的 Socket 通信

    Java socket 封装了传输层的实现细节,开发人员可以基于 socket 实现应用层.本文介绍了 Java socket 简单用法. 1. 传输层协议 传输层包含了两种协议,分别是 TCP (T ...

  6. Java实现简单版SVM

    Java实现简单版SVM 近期的图像分类工作要用到latent svm,为了更加深入了解svm,自己动手实现一个简单版的.         之所以说是简单版,由于没实用到拉格朗日,对偶,核函数等等.而 ...

  7. Java自定义简单标签

     Java自定义简单标签可以方便的在页面输出信息,并且对于权限的控制,和对于Jsp标签和servlet代码的分离有着很好的作用. 下面将以权限的控制为例自定义一个标签: 一.标签类型 <wxt: ...

  8. 主题:Java WebService 简单实例

    链接地址:主题:Java WebService 简单实例    http://www.iteye.com/topic/1135747 前言:朋友们开始以下教程前,请先看第五大点的注意事项,以避免不必要 ...

  9. Java课程设计----仿Windows标准型计算器

    JAVA课程设计 仿Windows标准型计算器(By Yanboooooooo) 一.团队介绍: 连燕波[组长]:网络1513学生. 张文博[组员]:网络1513学生. 二.项目git地址 码云项目地 ...

随机推荐

  1. JDBC之Statement 接口的测试(存在sql注入风险)

    实现简单的登录功能 import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; impo ...

  2. WPF UI Close button

    <Window x:Class="WpfApplication1.MainWindow" xmlns="http://schemas.microsoft.com/w ...

  3. centos 6.5 升级openssh-7.5

    1.环境 2.安装telnet 服务,防止ssh升级之后登陆不上服务器,使用telnet 连接服务器 yum install telnet-server -y chkconfig telnet on ...

  4. 003--PowerDesigner创建索引与外键

    PowerDesigner创建索引与外键 一.创建索引 双击Table->Columns->创建索引 Step1:双击Table Step2:选择Columns->创建索引 弹出如下 ...

  5. 四种pop模式介绍

    四种pop模式介绍 URL:http://www.hishop.com.cn/ecschool/jd/show_21195.html URL:https://zhidao.baidu.com/ques ...

  6. 前端 CSS的选择器 伪元素选择器

    介绍常用的伪元素. after用得比较多的 first-letter 用于为文本的第一个首字母设置样式. <!DOCTYPE html> <html lang="en&qu ...

  7. python字典-字典方法

    1.kyes() (1)取出字典的key In [32]: myCat Out[32]: {'colr': 'gray', 'size': 'fat'} In [33]: for i in myCat ...

  8. STL关联容器值hashtable

    hashtable(散列表)是一种数据结构,在元素的插入,删除,搜索操作上具有常数平均时间复杂度O(1); hashtable名词 散列函数:负责将某一元素映射为索引. 碰撞(collision):不 ...

  9. [Python3 填坑] 017 实例方法、静态方法、类方法的区别

    目录 1. print( 坑的信息 ) 2. 开始填坑 2.1 先上例子 2.2 分析 1. print( 坑的信息 ) 挖坑时间:2019/04/07 明细 坑的编码 内容 Py024-1 实例方法 ...

  10. HDU.6186.CSCource.(前缀和数组和后缀和数组)

    明天后天是南昌赛了嘤嘤嘤,这几天就先不更新每日题目了,以后补题嘤嘤嘤. 今天和队友做了一套2017年广西邀请赛,5个题还是有点膨胀...... 好了,先来说一下有意思的题目吧...... CS Cou ...