我把输入都保存到一个 String 里面,空格为分隔符:
String a = "1.5 + 5 * 8 - 1.6";
然后转为 String[]:
String[] b = a.split(" ");
再通过奇偶判断数字与运算符,生成一个数字 double[]:
double[] c = new double[(b.length + 1) / 2];
for (int j = 0, i = 0; j < b.length; j++) {
if (j % 2 == 1) {
continue;
}
c[i] = Double.parseDouble(b[j]);
i++;
}
for (double i : c) {
System.out.print(i + " ");
}
输出: 1.5 5.0 8.0 1.6
然后怎么解决运算符这个问题就想不出法了,怎么构造一个 数字 运算符 数字 运算符 数字 的式子啊?
还是有更好的方法?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.