switch裡面要用字串的話,JDK必須要使用1.7以上,還有case後面不該緊接著判斷字串,應該要加一個空白,例如:case "+":
0 P$ w/ S" T9 g" x& x因為你或許不能掌握考試時JDK的版本,switch-case那邊我建議你用if-else-if取代,程式範例如下:# Q/ y4 E6 X* C& `% _! V. X6 E
2 [2 s' E, G# b8 Vpublic class TQC206
9 e) R. @% Q: f) l. x; q$ f7 D$ t{
' n* G9 P3 m# C( x public static void main(String args[])
; G/ r4 ?( {' B; G* B4 ^* m; | {
0 h) Q' c' M0 B% L0 a. Q float a,b;
- M. h+ N1 z* W% G0 J! f" C0 n" _ String calc;8 B0 f) p$ l8 k4 A
try{! v# W. x; i5 S
if(args.length==3){: @0 ?) ~' v0 h G3 s0 \
a = Float.parseFloat(args[0]);' ~! Z9 U* G0 r
b = Float.parseFloat(args[2]);- N+ L3 x% b6 A R- U9 g: H
calc = args[1];6 J: R9 w' H3 g
if(calc.equals("+")){
, _3 w/ l0 s. n( v! q8 r System.out.println(args[0]+args[1]+args[2]+"="+(a+b));$ m8 @2 B# z( c
}else if(calc.equals("-")){
$ A0 g( y k( }+ e( i7 u5 t System.out.println(args[0]+args[1]+args[2]+"="+(a-b));
( a9 O. |) e) H3 a: {8 j0 S }else if(calc.equals("x")){
5 n, x: B/ b. F4 N6 e System.out.println(args[0]+args[1]+args[2]+"="+(a*b));: s4 t* w/ A( {; x' y
}else if(calc.equals("/"))# O3 ]- q3 ]* H# \& D: e' N
{( ]3 o) k/ Q( v, q
if(b==0)
$ a- R; N. S% u; c9 r$ \ {
9 B6 F5 i8 ~! R3 L0 U: y/ d# N System.out.println("除數不可為 0");
4 |' p H) N% s# |$ i0 g+ d }else7 y2 p, E3 E6 [3 A1 {0 Q
{
) b3 H0 F5 Q5 t0 G- u System.out.println(args[0]+args[1]+args[2]+"="+(a/b));
' X: h& K( z2 q6 T3 @7 s. e1 f }
+ Y, b; D8 ^$ B+ y6 F- n }; o) F0 _! `8 U% w: Z
else' O+ R# z1 {9 R$ q. k. [
{
5 t9 T2 u; x! K, j4 }5 J System.out.println("第二個引數請使用 + - x / 的其中一種運算符號");
6 L1 O0 Q- G6 F! ]$ D System.exit(0);! e6 q3 w7 w$ W- |+ {3 B
}
8 A8 k0 K$ n. u' ^$ S }else{
B; y! N5 V$ v& j# h- [1 ~. n System.out.println("請使用三個引數,如下格式\n 1 + 2");! n9 S6 z7 K( c7 c1 k
}$ p8 N4 Z$ R& Q Z6 D
}
/ f6 x7 {5 ^% ~- |$ s' \( T+ Z catch(ArrayIndexOutOfBoundsException e)
" |1 X4 v; z% V! u {
! W! o1 }, d6 p" z5 j System.out.println("使用引數不對,請使用如下格式\n 1 + 2\n"+e.getMessage());
2 u ?& x' ^8 ~! H- X }
1 F3 c4 u1 i8 S' d7 L& c catch(NumberFormatException e)
U( n- `( S# e {
) j* V& K- @. b6 P) D System.out.println("使用引數不對,請使用如下格式\n 1 + 2\n"+e.getMessage());
2 Z- e) v) r3 o$ K }
4 r7 _, b0 b1 [ f) Y j4 V# S! m0 P8 e# W# ~( G3 m
}
1 {, t3 B c# j. o0 w} |