switch裡面要用字串的話,JDK必須要使用1.7以上,還有case後面不該緊接著判斷字串,應該要加一個空白,例如:case "+":
; F5 Z4 G6 ^. b0 v6 e8 \因為你或許不能掌握考試時JDK的版本,switch-case那邊我建議你用if-else-if取代,程式範例如下:
4 L( ]2 _, z' u" e+ s- R; t
- J+ }) q! c1 o( `- C, }! Tpublic class TQC206) M& i, d5 t# ]9 T! p4 H2 O
{$ B) |+ R, ?' i7 b
public static void main(String args[])
/ D7 A% z8 M. G; Q {& h8 V% _; |8 X: ?0 x" x0 p3 f% @
float a,b;7 |# e) q2 _6 @2 h" F4 J
String calc;
1 p2 s# A3 O5 a* c( q try{
; A0 u% y3 S3 e% ~) Z% ~6 W7 r if(args.length==3){
6 T0 h) C8 ~5 }7 L- e7 E5 ` a = Float.parseFloat(args[0]);
L( Q+ X/ `3 q: ` b = Float.parseFloat(args[2]);
A( q2 Z, R6 w2 K6 E O calc = args[1];
& Y4 j. ~9 K, H- t3 [1 m if(calc.equals("+")){( I ^% a% w4 r$ V; I0 w d
System.out.println(args[0]+args[1]+args[2]+"="+(a+b));0 b" j' s" Q+ n# I s2 C% u! K
}else if(calc.equals("-")){0 R4 j, e5 a/ x( I% `7 a8 H- }
System.out.println(args[0]+args[1]+args[2]+"="+(a-b));. T' `# u: |; a8 O
}else if(calc.equals("x")){' Z, W& b2 e( A% s6 l) v6 `2 y
System.out.println(args[0]+args[1]+args[2]+"="+(a*b));
% l, g# J1 l7 j/ E! h4 o }else if(calc.equals("/")), B8 a8 Q) d P, A9 F
{
6 g% c1 N5 V& y' z% A! F9 v if(b==0); b1 G8 H1 Z9 P3 |& P/ y) |
{5 E+ {! C1 P$ t; {; S8 h$ P7 K
System.out.println("除數不可為 0");7 g: I( h# u7 k5 x4 U" P1 ~/ o W
}else
+ `5 D D* {8 K {
6 Q/ c* P' ]4 {9 s7 \ System.out.println(args[0]+args[1]+args[2]+"="+(a/b));1 Y P( l4 W6 U
}+ X! B ^9 a- X* W4 U1 S# e* A
}2 m( ], ~4 Z7 S) r. k7 p; ^& s) I, N/ O, [
else7 t# n6 ~1 ?) h; v" ~
{+ \ W2 @$ z( }+ S
System.out.println("第二個引數請使用 + - x / 的其中一種運算符號");) O+ _) h! H2 X- B
System.exit(0);, F- ~# w6 I$ U
}
% {3 A( {3 l+ [8 k s }else{
3 e* |$ y4 x) G: S0 b, P System.out.println("請使用三個引數,如下格式\n 1 + 2");
' b& y( M$ f0 E8 J6 f }+ T3 s$ O( H* M1 P$ {6 U" y
}
7 v- N2 o$ s( E9 |% V3 m. ? catch(ArrayIndexOutOfBoundsException e); l' G( X# n* ~8 g
{6 S2 i+ j- K2 _' U. |0 M
System.out.println("使用引數不對,請使用如下格式\n 1 + 2\n"+e.getMessage());
2 Y- k7 l4 \- U# G# M }
& J% Q. [6 ?2 L# U5 ]$ T$ Q catch(NumberFormatException e)5 _, s$ C/ Q7 x9 E
{
$ F) U" T' R2 S( `$ T System.out.println("使用引數不對,請使用如下格式\n 1 + 2\n"+e.getMessage());
3 ^: c; c% e9 `$ B) Z: M& A }, |# `( i- w& o3 G( ^- b
% w) i/ T* b7 D+ n }( q# z6 b* a# H! `
} |