Java中,输入一个数学表达式,如:1+2,然后输出计算后的结果:1+2=3。

Java中,输入一个数学表达式,如:1+2,然后输出计算后的结果:1+2=3。这里表达式只计算一次即可,可以使用加减乘除任意一个,可以进行小数运算。... Java中,输入一个数学表达式,如:1+2,然后输出计算后的结果:1+2=3。这里表达式只计算一次即可,可以使用加减乘除任意一个,可以进行小数运算。 展开
 我来答
蕉太郎吃香蕉1
2017-01-09
知道答主
回答量:10
采纳率:0%
帮助的人:2.7万
展开全部


这样应该就可以了

lzs丶灬
2017-01-09 · TA获得超过632个赞
知道小有建树答主
回答量:881
采纳率:100%
帮助的人:520万
展开全部
//算式
public static void test32() throws Exception{
    System.out.println("请输入算式:");
    Scanner scanner = new Scanner(System.in);
    String str = scanner.next("-?\\d*\\.?\\d+[+-/*]-?\\d*\\.?\\d+");
    String[] xyStr = str.split("[+-/*]");
    float x = Float.parseFloat(xyStr[0]);
    float y = Float.parseFloat(xyStr[1]);
    float r = 0;
    char opt = '+';
    if(str.contains("+")){
        opt = '+';
        r = x + y;
    }else if(str.contains("-")){
        opt = '-';
        r = x - y;
    }else if(str.contains("*")){
        opt = '*';
        r = x * y;
    }else if(str.contains("/")){
        opt = '/';
        r = x / y;
    }
    System.out.println(x+""+opt+y+"="+r);
}
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
潜藏的卑微
2017-01-09 · TA获得超过246个赞
知道小有建树答主
回答量:335
采纳率:53%
帮助的人:189万
展开全部
import java.util.Scanner;

public class test1 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个数学表达式,如'1+1'、'1-1'、'1*1'、'1/1'");
String str = sc.next();
if(str.contains("+")){
String[] num = str.split("+");
double num1 = Double.parseDouble(num[0]);
double num2 = Double.parseDouble(num[1]);
System.out.println("运算结果是:"+num1+"+"+num2+"="+(num1+num2));
}else if(str.contains("-")){
String[] num = str.split("-");
double num1 = Double.parseDouble(num[0]);
double num2 = Double.parseDouble(num[1]);
System.out.println("运算结果是:"+num1+"-"+num2+"="+(num1-num2));
}else if(str.contains("*")){
String[] num = str.split("\\*");
double num1 = Double.parseDouble(num[0]);
double num2 = Double.parseDouble(num[1]);
System.out.println("运算结果是:"+num1+"*"+num2+"="+(num1*num2));
}else{
String[] num = str.split("/");
double num1 = Double.parseDouble(num[0]);
double num2 = Double.parseDouble(num[1]);
System.out.println("运算结果是:"+num1+"/"+num2+"="+(num1/num2));
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
嗯嗯嗯嗯嗯对
2017-01-09 · 超过24用户采纳过TA的回答
知道答主
回答量:68
采纳率:100%
帮助的人:38.6万
展开全部
import java.util.Scanner;

public class Test1 {

    public static void main(String[] args) {
        //读取控制台输入数据
        Scanner sc = new Scanner(System.in); 
        String readLine = sc.nextLine();
        //定义字符串组进行运算
        String[] str;
        //判断输入的是什么关系
        if(readLine.contains("+")){
             str = readLine.split("\\+");
             System.out.println(str[0]+"+"+str[2]+"="+String.valueOf(Long.parseLong(str[0])+Long.parseLong(str[1])));
        };
        if(readLine.contains("-")){
             str = readLine.split("\\-");
             System.out.println(str[0]+"-"+str[2]+"="+ String.valueOf(Long.parseLong(str[0])-Long.parseLong(str[1])));
        };
        if(readLine.contains("*")){
            str = readLine.split("\\*");
             str = readLine.split(str[0]+"*"+str[2]+"="+ String.valueOf(Long.parseLong(str[0])*Long.parseLong(str[1])));
        };
        if(readLine.contains("÷")){
             str = readLine.split("\\÷");
             str = readLine.split(str[0]+"÷"+str[2]+"="+ String.valueOf(Long.parseLong(str[0])/Long.parseLong(str[1])));
        };
        
    }
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式