问题描述:实现一个简单的加减乘除,但是不知道如何根据用户的输入来调用不同的方法
package for01;
import java.util.Scanner;
public class computer {
//实现加减乘除的简单计算
public static void main(String[] args) {
// TODO Auto-generated method stub
//功能列表
System.out.println("请输入数字选择需要使用的功能");
System.out.println("1.加法功能");
System.out.println("2.减法功能");
System.out.println("3.乘法功能");
System.out.println("4.除法功能");
System.out.println(" ");
//告知已选择功能
Scanner scan = new Scanner(System.in);
int listnumber = scan.nextInt();
switch(listnumber)
{
case 1:
System.out.print("已经选择加法功能");
break;
case 2:
System.out.print("已经选择减法功能");
break;
case 3:
System.out.print("已经选择乘法功能");
break;
case 4:
System.out.print("已经选择除法功能");
break;
default:
System.out.print("输入不合法");
}
System.out.println("请输入需要计算的数字");
float input1= scan.nextInt();
float input2= scan.nextInt();
float app = add1(input1,input2);
System.out.println("结果为"+app);
}
//加法
public static float add1(float input1,float input2) {
float result = input1 + input2;
return result;
}
//减法
public static float add2(float input1,float input2) {
float result = input1 - input2;
return result;
}
//乘法
public static float add3(float input1,float input2) {
float result = input1 * input2;
return result;
}
//除法
public static float add4(float a,float b) {
if(b==0) {
System.out.println("除数不能为零");
return 0;
}
float result = a/b;
return result;
}
package cn.tedu.max; import java.util.Scanner; public class Computer { public static Scanner scan = new Scanner(System.in); //实现加减乘除的简单计算 public static void main(String[] args) { //功能列表 System.out.println("请输入数字选择需要使用的功能"); System.out.println("1.加法功能"); System.out.println("2.减法功能"); System.out.println("3.乘法功能"); System.out.println("4.除法功能"); System.out.println("---------------------"); //告知已选择功能 int selectNumber = scan.nextInt(); System.out.println("请输入需要计算的数字"); double input1 = scan.nextInt(); double input2 = scan.nextInt(); switch (selectNumber) { case 1: System.out.print("已经选择加法功能"); double app1 = addition(input1, input2); System.out.println("结果为" + app1); break; case 2: System.out.print("已经选择减法功能"); double app2 = subsract(input1,input2); System.out.println("结果为" + app2); break; case 3: System.out.print("已经选择乘法功能"); double app3 = multiply(input1,input2); System.out.println("结果为" + app3); break; case 4: System.out.print("已经选择除法功能"); double app4 = divide(input1,input2); System.out.println("结果为" + app4); break; default: System.out.print("输入不合法"); } } //加法 public static double addition(double input1, double input2) { double result = input1 + input2; return result; } //减法 public static double subsract(double input1, double input2) { double result = input1 - input2; return result; } //乘法 public static double multiply(double input1, double input2) { double result = input1 * input2; return result; } //除法 public static double divide(double a, double b) { if (b == 0) { System.out.println("除数不能为零"); return 0; } double result = a / b; return result; } }
if判断输入,如果是1调用加法功能,如果是2调用减法功能,如果是3调用乘法功能,如果是4调用除法功能,其他的返回输入有误
你可以用switch( 表达式)
switch( 表达式) {
case常量1 :
当表达式的值等于整型常量1时执行的语句;
break;
case常量2 :
当表达式的值等于整型常量2时执行的语句;
break;
---
default:
当表达式的值不满足任何一个case的值时,执行的语句;
}
import java.util.Scanner;
public class computer {
//实现加减乘除的简单计算
public static void main(String[] args) {
// TODO Auto-generated method stub
// 功能列表
System.out.println("请输入数字选择需要使用的功能");
System.out.println("1.加法功能");
System.out.println("2.减法功能");
System.out.println("3.乘法功能");
System.out.println("4.除法功能");
System.out.println(" ");
// 告知已选择功能
Scanner scan = new Scanner(System.in);
int listnumber = scan.nextInt();
switch (listnumber) {
case 1:
System.out.print("已经选择加法功能");
break;
case 2:
System.out.print("已经选择减法功能");
break;
case 3:
System.out.print("已经选择乘法功能");
break;
case 4:
System.out.print("已经选择除法功能");
break;
default:
System.out.print("输入不合法");
}
System.out.println("请输入需要计算的数字");
float input1 = scan.nextInt();
float input2 = scan.nextInt();
float app = 0;
switch (listnumber) {
case 1:
app = add1(input1, input2);
break;
case 2:
app = add2(input1, input2);
break;
case 3:
app = add3(input1, input2);
break;
case 4:
app = add4(input1, input2);
break;
default:
System.out.print("输入不合法");
}
System.out.println("结果为" + app);
}
//加法
public static float add1(float input1, float input2) {
float result = input1 + input2;
return result;
}
//减法
public static float add2(float input1, float input2) {
float result = input1 - input2;
return result;
}
//乘法
public static float add3(float input1, float input2) {
float result = input1 * input2;
return result;
}
//除法
public static float add4(float a, float b) {
if (b == 0) {
System.out.println("除数不能为零");
return 0;
}
float result = a / b;
return result;
}
}
简单改一下。再想想,优化一下。
“但是不知道如何根据用户的输入来调用不同的方法” ,用一个全局变量来保存用户输入的值