Java 接口实现计算器加减乘除(字符交互界面)
//利用java接口实现计算器,实现加减乘除的功能 import java.util.Scanner; class Test {public static void main(String[] args) {fun i = new fun();jiafa s1 = new jiafa();jianfa s2 = new jianfa();chengfa s3 = new chengfa();chufa s4 = new chufa();System.out.println("请输入你要计算的两个数字:");Scanner scanner = new Scanner(System.in);Scanner scanner2 = new Scanner(System.in);int str = scanner.nextInt();int str2 = scanner2.nextInt();int a = str;int b = str2;System.out.println("请输入您想要计算的方式(+,-,*,/):");Scanner scanner3 = new Scanner(System.in);String zifu1 = scanner3.next();//next()不能读取空格,nextline()可以读取//在实现字符窗口的输入时,我个人更喜欢选择使用扫描器Scanner,它操作起来比较简单。// 在写作业的过程中,我发现用Scanner实现字符串的输入有两种方法,一种是next(),// 一种nextLine(),但是这两种方法究竟有什么区别呢?// 首先,next()一定要读取到有效字符后才可以结束输入,对输入有效字符之前遇到的空格键、Tab键或Enter键等结束符,// next()方法会自动将其去掉,只有在输入有效字符之后,next()方法才将其后输入的空格键、// Tab键或Enter键等视为分隔符或结束符。简单地说,next()查找并返回来自此扫描器的下一个完整标记。// 完整标记的前后是与分隔模式匹配的输入信息,// 所以next方法不能得到带空格的字符串而nextLine()方法的结束符只是Enter键,// 即nextLine()方法返回的是Enter键之前的所有字符,它是可以得到带空格的字符串的。//nextLine()自动读取了被next()去掉的Enter作为他的结束符,所以没办法给s2从键盘输入值。// 经过验证,其他的next的方法,如double nextDouble() ,// float nextFloat() , int nextInt() 等与nextLine()连用时都存在这个问题,// 解决的办法是:在每一个 next()、nextDouble() 、 www.gzlij.com()、nextFloat()、nextInt()// 等语句之后加一个nextLine()语句,将被next()去掉的Enter结束符过滤掉 scanner3.nextLine();while(true) {if (zifu1.equals("+")) {System.out.print("加法结果:");i.func(s1, a, b);break;} else if (zifu1.equals("-")) {System.out.print("减法结果:");i.func(s2, a, b);break;} else if (zifu1.equals("*")) {System.out.print("乘法结果:");i.func(s3, a, b);break;} else if (zifu1.equals("/")) {System.out.print("除法结果:");i.func(s4, a, b);break;}else {System.out.println("非法输入!");break;}}} }interface Ijisuanqi {int jisuan(int a, int b);}class fun {public void func(Ijisuanqi per, int a, int b) {System.out.println(per.jisuan(a, b));}}class jiafa implements Ijisuanqi {public int jisuan(int a, int b) {return a + b;}}class jianfa implements Ijisuanqi {public int jisuan(int a, int b) {return a - b;}}class chengfa implements Ijisuanqi {public int jisuan(int a, int b) {return a * b;}}class chufa implements Ijisuanqi {public int jisuan(int a, int b) {if (b == 0) {return -1;} else {return a / b;}}}
运行结果:
转载于:https://www.cnblogs.com/hetaoyuan/p/10576874.html
Java 接口实现计算器加减乘除(字符交互界面)相关推荐
- java加法运算器界面_Java 接口实现计算器加减乘除(字符交互界面)
//利用java接口实现计算器,实现加减乘除的功能 importjava.util.Scanner;classTest {public static voidmain(String[] args) { ...
- html交互界面怎么写,HTML5 BIOS字符交互界面模拟
CSS 语言: CSSSCSS 确定 @-webkit-keyframes blink { 1% { opacity: 1; } 49% { opacity: 1; } 50% { opacity: ...
- java接口的作用是什么?
我想,可能不止我一个人有这个疑问,所以,把它贴出来. 下面是madai和clkrst给我的回答. 在此谢谢两位. 我的问题是: java 的接口到底起什么作用? 1.从书中看到的是java程序的接口中 ...
- Java接口的作用和意义是什么?
接口的定义 接口泛指实体把自己提供给外界的一种抽象化物(可以为另一实体),用以由内部操作分离出外部沟通方法,使其能被内部修改而不影响外界其他实体与其交互的方式. 人类与电脑等信息机器或人类与程序之间的 ...
- Java交互界面实现计算器开发设计【附函数源码】
使用Java开发的简易计算器,包括加.减.乘.除.平方.立方.小数等运算,适合学习GUI编程实践, 目录 控件触发时集中处理函数 操作符点击后数据转换赋值函数 计算器窗口界面函数 运算符控件 数字控件 ...
- java实现简易计算器,实现加减乘除,括号,算式查错,
java实现简易计算器 问题分析 一.计算机界面显示 二. 计算器计算数据处理 三. 部分源代码(该源码未加入算式查错,文件资源正在上传) 三.完整源码,加减乘除,括号,delete,算式查错 问题分 ...
- [ Java ] 实现两个数加减乘除的简易计算器
[ Java ] 实现两个数加减乘除的简易计算器 新手,不足之处望大佬们海涵 感谢( *ˊᵕˋ)✩︎‧₊ 以下为代码: package com.zhong.homework;import java.u ...
- java文档注释加减乘除,java计算器加减乘除
TOMCAT7.0, IE8 三.实验内容及步骤 1.创建一个 web 工程,在页面中实现加减乘除的运算操作,并实现运算结果的计算显示, 注意进行异常处理,运行效果如下图所示.... ,本章的仿 Wi ...
- Java实现能完成 加减乘除幂与阶乘 组合运算的计算器
题目叙述: 有一组小学生要开始学习算术运算,需要使用计算机辅助他们检查计算结果,请帮助小同学设计一个能够完成+.-.*.\.幂运算和阶乘的计算器程序 具体要求: 由于是面向小同学的软件工具,请设计一个 ...
最新文章
- 顺序表-删除所有元素值为x结点(相等加一,不等前移k)
- 万年历插件软件测试,万年历软件测试报告
- 本科计算机科学与技术专业物理,中国工程物理研究院职工工学院计算机科学与技术(本科)专业介绍...
- oracle job 时间间隔,关于job的时间间隔的一个问题
- 串结构练习——字符串连接
- 动态开辟指定数量的线程来查找动态开辟的数组中的1000000数据中的值
- getpwnam学习
- Chrome 键盘快捷键(Mac)
- python将空格变成换行_Python基础之PEP8规范(代码写作规范)
- Lync server 2013新建持久聊天室提示用户未启用SIP
- c语言复杂度为o(n)的排序算法,计数排序算法——时间复杂度O(n+k)
- hybrid 单臂路由
- 怎样剪立体灯笼_懒人版立体镂空星星折纸灯笼教程
- CTF unserialize3
- H3C CAS 5.0 虚拟机备份与还原
- 绝地求生手游qq和微信不在一个服务器,绝地求生刺激战场微信和qq好友能一起玩吗 qq和微信服务器互通吗...
- 十大优质外盘炒黄金平台排名
- 手机qpython3 如何画图_记住这3个功能,一分钟掌握python sns作图
- Ubuntu下tar命令使用详解 .tar解压、.tar压缩
- 微信公众号开发Day01: 消息回复 英文励志语录回复实战