用Java写一个简单的加减乘除的运算,没有优先级的,初学.不是直接在终端里输入的那种.有大神吗?

package com.itany.sj;

import java.util.Scanner;

public class Test23
{
public static void main(String[] args)
{
// TODO Auto-generated method stub
Scanner input = new Scanner(System.in);
int num1, num2;
String ope;
num1 = input.nextInt();
ope = input.next();
while (ope.equals("+") || ope.equals("-") || ope.equals("*") || ope.equals("/"))
{
num2 = input.nextInt();
if (ope.equals("+"))
{
num1 = num1 + num2;
ope = input.next();
}
if (ope.equals("-"))
{
num1 = num1 - num2;
ope = input.next();
}
if (ope.equals("*"))
{
num1 = num1 * num2;
ope = input.next();
}
if (ope.equals("/"))
{
num1 = num1 / num2;
ope = input.next();
}
}
if (ope.equals("="))
{
System.out.println(num1);
}
input.close();
}

}
我算到第4数个就停下了,算到除法也就停下了,我要可以随便运算几个式子,帮忙解决这个就行了。不要太难的啊,我只会while,if,switch,

简化一下,这样


import java.util.Scanner;

public class CalcSimple{
    public static void main(String[] args){
        Scanner input = new Scanner(System.in);
        int num1, num2, sum=0;
        String ope;
        System.out.print("第1个数:");
        num1 = input.nextInt();
        System.out.print("运算符号(+|-|*|/):");
        ope = input.next();
        System.out.print("第2个数:");
        num2 = input.nextInt();

        if (ope.equals("+")){
            sum = num1 + num2;
        }else if (ope.equals("-")){
            sum = num1 - num2;
        }else if (ope.equals("*")){
            sum = num1 * num2;
        }else if (ope.equals("/")){
            sum = num1 / num2;
        }

        System.out.println("结果是 "+sum);
        input.close();
    }
}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-12-21
public static void main(String[] args) {
Scanner scn = new Scanner(System.in);
String op = null;
int num1=0;
int num2=0;
while(true){
System.out.print("请输入第一个数:");
num1=scn.nextInt();
System.out.print("请输入运算符:");
op=scn.next();
System.out.print("请输入第二个数:");
num2=scn.nextInt();

switch(op){
case "+":
System.out.println(num1+"+"+num2+"="+(num1+num2));
break;
case "-":
System.out.println(num1+"-"+num2+"="+(num1-num2));
break;
case "*":
System.out.println(num1+"*"+num2+"="+(num1*num2));
break;
case "/":
System.out.println(num1+"/"+num2+"="+(num1/num2));
break;
default:
System.out.println("输入运算符有误");
return;
}
}
}追问

字符数组:a,b,A,=,+,1,a,b,a,*,B,C统计出里面出现的字符及它们各自的个数,用Java语言编写!
初学者,只学了,for,if,which,switch,会用Scanner不要用我不知道的循环语句谢谢啊

相似回答