switch裡面要用字串的話,JDK必須要使用1.7以上,還有case後面不該緊接著判斷字串,應該要加一個空白,例如:case "+":
_% K9 F% Y ^+ V2 ]# o$ |因為你或許不能掌握考試時JDK的版本,switch-case那邊我建議你用if-else-if取代,程式範例如下:
5 z4 v2 G9 t) i; F% b% I. Y6 P. n, G& G3 e+ U, I# w- {
public class TQC206# H2 q; L3 N6 F; @3 |: g
{
" T4 J+ G: @3 U/ Q0 H) b9 ~6 Y public static void main(String args[])# j2 @( q3 p K5 E
{7 \6 k. d0 j0 }& B. I! A
float a,b;
/ z) v# w% z- E: T String calc;
1 S8 m8 t' f, o d2 F try{
4 o* i1 U2 I9 P if(args.length==3){
8 G. b' L; e/ N2 e2 `# o a = Float.parseFloat(args[0]);
2 a9 J( K6 g: P- q+ C6 P b = Float.parseFloat(args[2]);
& k2 p8 u `" d1 g& T7 n calc = args[1];9 h! N+ w; l4 U$ z! M0 d# t" i" h3 z
if(calc.equals("+")){
1 g+ P, H# q# }( H% g1 e System.out.println(args[0]+args[1]+args[2]+"="+(a+b));$ p# v. D5 \" E" c2 J8 }/ ~0 J+ J
}else if(calc.equals("-")){
3 g. P C' s8 X8 }, h( u6 h* o- F System.out.println(args[0]+args[1]+args[2]+"="+(a-b));
3 p' D* [# Q& ?1 c, l3 w2 K }else if(calc.equals("x")){- b) J; T- V3 {. b7 [$ [) p
System.out.println(args[0]+args[1]+args[2]+"="+(a*b));' n7 k+ H2 F( m# r- o) C5 S4 E9 n
}else if(calc.equals("/"))& ^7 @+ R& p$ }. c, z" e9 A
{: U# y5 c' |/ V7 j
if(b==0)
% b8 Y! y, _) |$ q4 k {
; R, k* _/ @( B0 k6 p9 p System.out.println("除數不可為 0");
! d! Y: S) }1 E* f. W& I! b }else- S9 [+ I1 K: r |
{
. O/ [; h- m. D! |; R1 i System.out.println(args[0]+args[1]+args[2]+"="+(a/b));' Y$ R. g$ r/ d+ g, Y- Q* o
}7 Z4 t2 G0 [0 P: b4 @
}* v1 t' ]$ T3 K% h- s, v
else6 _4 J" w g {$ z2 a+ z: z5 n
{
* O; P' F0 O* w2 w System.out.println("第二個引數請使用 + - x / 的其中一種運算符號");3 s$ f7 Q% U, ?7 l( `
System.exit(0);3 c6 J' \# d; C: J: n. C# W
}, n) G: m2 S4 U9 ~
}else{
3 I7 i% i; A+ U; M9 m1 `! T System.out.println("請使用三個引數,如下格式\n 1 + 2");
2 z5 X+ L" m5 ]" J: H9 z }
% n- r$ Q' R3 F+ p; w& s }
1 Q" O& h0 l4 z! t: O catch(ArrayIndexOutOfBoundsException e). s m" l9 t& @! u9 U. e( r
{1 m6 }0 c, p# A! O% a
System.out.println("使用引數不對,請使用如下格式\n 1 + 2\n"+e.getMessage());" t% t) |+ s0 a) h; p
}
* I) h& P7 y# B1 S1 Y catch(NumberFormatException e)
( n1 m1 ~% n+ k5 Y4 ^ {# m; Y! N. @! F2 T
System.out.println("使用引數不對,請使用如下格式\n 1 + 2\n"+e.getMessage());
" U! m+ V9 h: o, I' Y3 d1 y }- z5 {2 [' N: R+ b" Y% i
. a8 d" C3 a! l. W2 e% Q
}
' S* ^0 e- r# c- I. f} |