我正在写一个java方法,该方法需要一串加号和减号,例如
“ + 1 + 2 + 3-5”,我希望它返回答案的整数。
我正在尝试尽可能有效地做到这一点。我已经尝试过String.split()
方法,但是它的优缺点有些混乱。
有人可以帮忙吗?不,这不是家庭作业。
最佳答案
您将需要逐个字符地分析字符串。就像是
int foo(String s){
int total = 0;
String currentNum = ""
for(int i =0;i<s.length;i++){
if(s[i] =="+"){
total += Integer.parseInt(currentNum);
currentNum = ""
}else if(s[i] =="-"){
total -= Integer.parseInt(currentNum);
currentNum = ""
}else{
currentNum += s[i]
}
}
return total;
}