switch case实现两个数的算术运算
方法一:
package com.liaojianya.chapter1; import java.util.Scanner; public class SwitchDemo1
{
public static void main(String[] args)
{
Scanner input = new Scanner(System.in);
System.out.println("Enter number a : ");
double a = input.nextDouble();
System.out.println("Enter number b : ");
double b = input.nextDouble();
Action ac = new Action(a, b);
ac.command(Action.ADD);
ac.command(Action.SUBTRACT);
ac.command(Action.MULTIPLY);
ac.command(Action.DIVIDE);
ac.command(Action.MOD);
input.close();
}
} class Action
{
double a;
double b;
public Action(double a, double b)
{
this.a = a;
this.b = b;
}
public static final int ADD = 1;
public static final int SUBTRACT = 2;
public static final int MULTIPLY = 3;
public static final int DIVIDE = 4;
public static final int MOD = 5; public void command(int c)
{
switch (c)
{
case 1:
System.out.println(a + " + " + b + " = " + (a + b));
break; case 2:
System.out.println(a + " - " + b + " = " + (a - b));
break; case 3:
System.out.println(a + " * " + b + " = " + (a * b));
break; case 4:
System.out.println(a + " / " + b + " = " + (a / b));
break; case 5:
System.out.println(a + " % " + b + " = " + (a % b));
break; default:
System.out.println("unknown operation!");
break;
}
} }
方法二:
package com.liaojianya.chapter1; import java.util.Scanner; /**
* This program demonstrates the use of switch.
* @author LIAO JIANYA
*
*/
public class SwitchDemo
{
public static void main(String[] args)
{
Scanner input = new Scanner(System.in); System.out.println("Enter number a : ");
double a = input.nextDouble();
System.out.println("Enter number b : ");
double b = input.nextDouble();
System.out.println("Enter operater :1代表+,2代表-,3代表*,4代表/,5代表% ");
int c = input.nextInt();
switch(c)
{
case 1:
System.out.println(a + " + " + b + " = " + (a + b));
break; case 2:
System.out.println(a + " - " + b + " = " + (a - b));
break; case 3:
System.out.println(a + " * " + b + " = " + (a * b));
break; case 4:
System.out.println(a + " / " + b + " = " + (a / b));
break; case 5:
System.out.println(a + " % " + b + " = " + (a % b));
break; default:
System.out.println("unknown operation!");
break;
}
} }
运行结果:
Enter number a :
12.3
Enter number b :
32.1
12.3 + 32.1 = 44.400000000000006
12.3 - 32.1 = -19.8
12.3 * 32.1 = 394.83000000000004
12.3 / 32.1 = 0.38317757009345793
12.3 % 32.1 = 12.3
switch case实现两个数的算术运算的更多相关文章
- 深入理解Java的switch...case...语句
switch...case...中条件表达式的演进 最早时,只支持int.char.byte.short这样的整型的基本类型或对应的包装类型Integer.Character.Byte.Short常量 ...
- c语言基础表达式, 关系运算符, 逻辑运算符, 位运算符, 数据的取值范围, 分支结构(if...else, switch...case)
1.表达式: 表达式的判断是有无结果(值), 最简单的表达式是一个常量或变量, 如:12, a, 3 + 1, a + b, a + 5 都是表达式 2.BOOL(布尔)数据类型: c语言中除了基本数 ...
- c 输入两个数,第一个数决定一个nXn的矩阵,第二个数决定从1开始赋值,赋值的上限 (MD花了半天时间,思路不对害死人)
输入两个数,第一个数决定一个nXn的矩阵,第二个数决定从1开始赋值,赋值的上限 比如: 输入: 输出: 输入: 输出: #include<stdio.h> int main(void) { ...
- if else 与switch case判断
基础数据类型(四类八种 ) 不能为null. 整数型 byte 取值范围2的8次方 short 取值范围2的16次方 int 取值范围2的32次方 一般用int long 取值范围2的64次方 浮点型 ...
- 知识扩展--if...else...与switch...case...的执行原理
一.简述 编程语言中的条件分支结构有两种:if-else和switch-case,这两种条件分支之间可以相互转换,但是也存在一些区别,那么什么时候该用if-else,什么时候该用switch-case ...
- Java switch case和数组
Java switch case 语句 switch case 语句判断一个变量与一系列值中某个值是否相等,每个值称为一个分支. 语法 switch case 语句格式: switch(express ...
- c语言学习笔记 多级else if 和switch case有什么区别
; ) { dosth(); } ) { dosth2(); } else if(opion==) { dosth3(); } else dosth4(); 如果给option的一个值是2的话,那么程 ...
- 选择语言之switch case
程序语言-选择语言之switch case 多选一,类似if else if else if else 模版: Switch(选择条件) { Case(条件一)//相当于if Conso ...
- 使用策略模式重构switch case 代码
目录 1.背景 2.案例 3.switch…case…方式实现 4.switch…case…带来的问题 5.使用策略模式重构switch…case…代码 6.总结 1.背景 之前在看<重构 ...
随机推荐
- Codeforces 650C Table Compression (并查集)
题意:M×N的矩阵 让你保持每行每列的大小对应关系不变,将矩阵重写,重写后的最大值最小. 思路:离散化思想+并查集,详见代码 好题! #include <iostream> #includ ...
- Linux vim的一些命令
一.vi/vim的多行注释及取消注释 1.多行注释 (1) 进入命令行模式,按ctrl + v进入 visual block模式,然后按j, 或者k选中多行,把需要注释的行标记起来 (2) 按大写字母 ...
- POJ2478 - Farey Sequence(法雷级数&&欧拉函数)
题目大意 直接看原文吧.... The Farey Sequence Fn for any integer n with n >= 2 is the set of irreducible rat ...
- strust1.x中formbean的原理及作用
from: http://blog.csdn.net/tuiroger/article/details/3947896 今天张老师讲了一些比较重要的strust标签,<html:link ...
- Video Surveillance - POJ 1474(判断是否存在内核)
题目大意:询问是否在家里装一个监视器就可以监控所有的角落. 分析:赤裸裸的判断多边形内核题目. 代码如下: #include<iostream> #include<string.h& ...
- [转]freemaker格式化日期
转至:http://wentao365.iteye.com/blog/2047234 1.格式化日期 ${updated?string("yyyy-MM-dd HH:mm:ss") ...
- eclipse mybatis Generator
国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html内部邀请码:C8E245J (不写邀请码,没有现金送)国内私 ...
- node.js在windows下的学习笔记(3)---npm
1.什么是npm npm是Node.js的包管理器,它允许开发人员在Node.js的应用程序中创建,共享,重用模块.之前我们通过node的官网的安装程序安装了Node.js,那么npm就已经装好了的. ...
- 算法 - 求和为n的连续正整数序列(C++)
//************************************************************************************************** ...
- dubbox开发rest+json指南【转】
http://dangdangdotcom.github.io/dubbox/rest.html 目录 概述 REST的优点 应用场景 快速入门 标准Java REST API:JAX-RS简介 RE ...