Java输入字符串时next()和nextLine()的区别:
1.next()是在输入的一行中,到第一个空格为止,作为本次要输入的字符串,比如我可能输入“I am a girl.”,其实只会存储“I”;
2.nextLine()是在输入的一行中,到回车为止,作为本次输入的字符串(包括空格);
波兰表达式:
样例输入:* + 11.0 12.0 + 24.0 35.0
样例输出:1357.000000
import java.util.*;
public class Main
{
//定义一个数组进行存储
static String[] arr;
static int i = -1;
//进行判断
private static double exp() {
i++;
switch (arr[i]) {
case "+":
return exp() + exp();
case "-":
return exp() - exp();
case "*":
return exp() * exp();
case "/":
return exp() / exp();
default:
return Double.parseDouble(arr[i]);
}
}
//测试代码
public static void main(String[] args)
{
Scanner sc = new Scanner(System.in);
Main m = new Main();
String str1 = sc.nextLine();
arr = str1.split(" ");
//输出答案
System.out.println(m.exp());
}
}