作者TonyQ (骨头)
看板java
标题Re: [问题] 如何作算式运算?
时间Thu Apr 13 01:11:18 2006
※ 引述《bruceman (大家好)》之铭言:
: 那请问如果要算二位数或三位数等运算要怎麽写呢?
: 因为我写出来了但是只有一位数简单加减运算而已
: 谢谢指教
class CountNum{
double Count(String inputStr){
String operator="+-*/";
java.util.StringTokenizer st=new
java.util.StringTokenizer(inputStr,operator,true);
double result=Double.parseDouble(st.nextToken());
while(st.hasMoreTokens()){
String token=st.nextToken();
if(operator.indexOf(token)!=-1){
double t=Double.parseDouble(st.nextToken());
switch(token.charAt(0)){
case '+':result += t;break;
case '-':result -= t;break;
case '*':result *= t;break;
case '/':result /= t;break;
}
}
}
return result;
}
public static void main(String args[]) throws java.io.IOException{
java.io.BufferedReader br=
new java.io.BufferedReader(
new java.io.InputStreamReader(System.in));
System.out.print("请输入算式:");
String inputStr=br.readLine();
CountNum cn=new CountNum();
System.out.println("结果为:"+cn.Count(inputStr));
}
}
--
String temp="relax"; | Life just like programing
while(buringlife) String.forgot(temp); | to be right or wrong
while(sleeping) brain.setMemoryOut(); | need not to say
stack.push(life.running); | the complier will
stack.push(scouting.buck()); | answer your life
stack.push(bowling.pratice()); | Bone
everything
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.138.240.57