黑马程序员技术交流社区
标题:
初学Java学完函数,写个简单的整数加减乘除计算器,请问...
[打印本页]
作者:
DarkSky
时间:
2014-7-16 20:35
标题:
初学Java学完函数,写个简单的整数加减乘除计算器,请问...
本帖最后由 DarkSky 于 2014-7-20 16:06 编辑
我想每输入一个数字然后打印出输入的这个数字和运算符,请问怎么搞??例如我先算了8+8,打印出结果16和(8 + 8),我再加一个7,输出23和(8 + 8 + 7)以此类推。
作者:
fantacyleo
时间:
2014-7-16 20:45
没看明白你的预期,你才输入一个数字,怎么能打印出运算符
作者:
icris
时间:
2014-7-16 22:35
本帖最后由 icris 于 2014-7-16 22:37 编辑
private static void cal() throws IOException {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String string = "";
String buf = null;
double d = 0 ;
for(;;){
buf = reader.readLine();
if (buf.length() <= 0) {
continue;
}
if (buf.equals("end")) {
break;
}
if (buf.startsWith("+")) {
d+=new Double(buf.substring(1));
string += buf;
}else if (buf.startsWith("-")) {
d-=new Double(buf.substring(1));
string += buf;
}else if (buf.startsWith("*")) {
d*=new Double(buf.substring(1));
string = "("+string+")"+buf;
}else if (buf.startsWith("/")) {
d/=new Double(buf.substring(1));
string = "("+string+")"+buf;
}else {
d = new Double(buf);
string = buf;
}
if ((d - Math.round(d)) == 0) {
System.out.print((int)d);
}else {
System.out.print(d);
}
System.out.println( "\t(" + string + ")");
}
}
复制代码
想了一下好像应该用 StringBuidler 不过就这样吧…
bug 非常多,不想改了…只要严格按照第一步输数字然后输运算符加数字就可以了。
作者:
毕业生
时间:
2014-7-16 22:45
传智的吗 加个好友,俺也是!
作者:
DarkSky
时间:
2014-7-17 11:23
icris 发表于 2014-7-16 22:35
想了一下好像应该用 StringBuidler 不过就这样吧…
bug 非常多,不想改了…只要严格按照第一步输数字然后 ...
谢谢了,我今天早上又写了一遍成功了,但还是谢谢了,嘿嘿!!
作者:
Beka
时间:
2014-7-17 12:25
后边的功能是不是有点不必要额。。
作者:
天涯无痕
时间:
2014-7-17 12:32
有点儿。。。。。。。。。厉害
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2