用java编程:输入数字和运算符,输出结果。
4个回答
展开全部
java用户自己不能对运算符重载,所以只能对你输入的第三个字符做判断,然后做相应的运算处理。
也就是说java本身是不会根据你输入的第三个字符做相应的运算。
Scanner sc = new Scanner(System.in);
String input = sc.nextLine();
String[] n = input.split("\\s");
int firNum = Integer.parseInt(n[0]);
int secNum = Integer.parseInt(n[1]);
System.out.println(firNum+n[2]+secNum);
至于后面的运算结果要判断第三个字符,如果是*,那么firNum+n[2]+secNum+"="+firNum*secNum
如果是+,那么firNum+n[2]+secNum+"="+firNum+secNum
我现在只能想到这样的,如果有好的方法请分享。。。
也就是说java本身是不会根据你输入的第三个字符做相应的运算。
Scanner sc = new Scanner(System.in);
String input = sc.nextLine();
String[] n = input.split("\\s");
int firNum = Integer.parseInt(n[0]);
int secNum = Integer.parseInt(n[1]);
System.out.println(firNum+n[2]+secNum);
至于后面的运算结果要判断第三个字符,如果是*,那么firNum+n[2]+secNum+"="+firNum*secNum
如果是+,那么firNum+n[2]+secNum+"="+firNum+secNum
我现在只能想到这样的,如果有好的方法请分享。。。
展开全部
public class Demo{
public static void main(String args[]){
int x=Integer.parseInt(args[0]);//你在控制台输入Java Demo运行程序时应该写成java Demo 1 2 *
int y=Integer.parseInt(args[1]);
String z=args[2];//分别接收输入的字符
System.out.println(x+z+y+"="+(x*y));//输出1*2=2
}
}
public static void main(String args[]){
int x=Integer.parseInt(args[0]);//你在控制台输入Java Demo运行程序时应该写成java Demo 1 2 *
int y=Integer.parseInt(args[1]);
String z=args[2];//分别接收输入的字符
System.out.println(x+z+y+"="+(x*y));//输出1*2=2
}
}
追问
还是有点问题,怎样在运行程序里直接按照这样的顺序:先是javac Demo.java然后是java Demo之后出现光标,输入:12 3 * 输出:12*3=36 老师要求是这样的,大侠帮帮忙喽,我才开始学java,都不太明白
追答
//貌似星号不能作为命令行参数输入,换成x就ok了,这个至于为什么不能,我就不太清楚了
public class Demo{
public static void main(String args[]){
int x=Integer.parseInt(args[0]);//你在控制台输入Java Demo运行程序时应该写成java Demo 1 2 *
int y=Integer.parseInt(args[1]);
String z=args[2];//分别接收输入的字符
System.out.println(x+z+y+"="+(x*y));//输出1*2=2
}
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
主要是截取输入的字符串 ,
1、先把输入的字符串变成char [] 数组
2、循环char数组,判断有没有+-x/和=这些特殊的符号,根据这些特殊的符号进行运行后输入运算后的内容
1、先把输入的字符串变成char [] 数组
2、循环char数组,判断有没有+-x/和=这些特殊的符号,根据这些特殊的符号进行运行后输入运算后的内容
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
public static void main(String args[]){
//获取第一个数字
String firstNum = args[0];
......
String operate = args[5];
if("+".equals(operate )){
System.out.println(".....");
}
}
大致思想是这样的
//获取第一个数字
String firstNum = args[0];
......
String operate = args[5];
if("+".equals(operate )){
System.out.println(".....");
}
}
大致思想是这样的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询