switch裡面要用字串的話,JDK必須要使用1.7以上,還有case後面不該緊接著判斷字串,應該要加一個空白,例如:case "+":
, {+ _0 U7 Y5 ?, Z0 F5 b% f因為你或許不能掌握考試時JDK的版本,switch-case那邊我建議你用if-else-if取代,程式範例如下:
/ e9 i$ L! I7 C: d
- D" l2 ?' o: [- s: Tpublic class TQC206- ~' r& k) A% _2 G u
{
4 q) i6 [! N0 Z+ M# T* h public static void main(String args[])
; _9 m. E) r3 X9 e- Y {
3 q/ f8 v t2 b" I float a,b;
' v: H9 z: d* F k# l# n7 w String calc;1 z# D0 C. b0 M
try{
( d9 H3 V0 W5 M; N7 ] if(args.length==3){
) d, ~6 \/ t& `4 K. P a = Float.parseFloat(args[0]);' t2 d+ Q/ ]$ P5 \7 d" l- C
b = Float.parseFloat(args[2]);& n( i7 ?) n2 r$ u
calc = args[1];2 l; a: {( f0 O) `
if(calc.equals("+")){5 C, s4 T1 O6 G. O& ~' V
System.out.println(args[0]+args[1]+args[2]+"="+(a+b));
; b7 r7 R, h* B2 f# p; i }else if(calc.equals("-")){" k* ]# ^. o" u3 t) B: [
System.out.println(args[0]+args[1]+args[2]+"="+(a-b));
% f( o! j D( k6 }& D' [ }else if(calc.equals("x")){
, o& }; Y6 O+ X7 t5 y% e9 m System.out.println(args[0]+args[1]+args[2]+"="+(a*b));, b9 \( |* Z5 X- E
}else if(calc.equals("/"))7 f- d9 U! p1 R) t) i3 k2 Z
{- T+ d& S' |. [1 G: l
if(b==0)
8 }0 z0 p5 n& V6 @! L1 B {: U0 {0 c" `6 y" z2 O
System.out.println("除數不可為 0");1 r8 l% V {" f$ C1 ^ H! L
}else4 T+ B3 B0 C5 j
{) Q7 S8 }5 M- i, R. F
System.out.println(args[0]+args[1]+args[2]+"="+(a/b));
; g& B' b; R n0 W' M6 q" X }$ U% f8 P% Y+ H' L4 F# R" B* b- R
}
6 n& H# H# Z) b: ` else
( U$ q8 }* x; X+ r3 Z {
! i5 ]- @) Q+ F+ y System.out.println("第二個引數請使用 + - x / 的其中一種運算符號");
7 X6 a# I/ n( c System.exit(0); {: `# h \' O
}
2 E7 q/ s4 e% X: H" } }else{
1 I1 M' r5 c0 e. r b& W( x; d$ i System.out.println("請使用三個引數,如下格式\n 1 + 2");+ [" }5 W s& f1 B
}
6 r+ b5 O! l: h! S2 }* ?" j3 e }4 ^& I3 X+ G, r. X {5 a
catch(ArrayIndexOutOfBoundsException e)
# ^$ K; [9 t3 _, V {8 q# H6 ^2 d5 C
System.out.println("使用引數不對,請使用如下格式\n 1 + 2\n"+e.getMessage());( h4 I) l' X3 _1 w4 F5 ]
}
6 w% `6 T3 }8 i; p7 Z) z& Q. e catch(NumberFormatException e)9 H( L* \% r; Y4 K( h b/ W
{; ?4 j" N+ r9 m' G4 w
System.out.println("使用引數不對,請使用如下格式\n 1 + 2\n"+e.getMessage());- L4 w* Z/ N& Y
}
8 W9 Y' v9 B7 A! f7 `7 o; r
* t7 C# e( i9 x, e5 \ }
# J5 z, y3 G; P6 a! i3 y" a1 d} |