switch裡面要用字串的話,JDK必須要使用1.7以上,還有case後面不該緊接著判斷字串,應該要加一個空白,例如:case "+":
0 x/ s! P! E' B; s3 A5 @5 o因為你或許不能掌握考試時JDK的版本,switch-case那邊我建議你用if-else-if取代,程式範例如下:, v: @3 B& Y/ \2 c. g1 _0 D
4 ]8 H0 q/ t7 q' i+ c$ L- J- E1 ypublic class TQC206- ?9 i4 a& f4 F
{
8 I o/ ~" ?+ T" t& @( } public static void main(String args[])3 z0 i$ d! x8 j" T i; j3 J
{4 u* i+ ]4 B* W" D! B% y7 h
float a,b;; ~7 N. k& ~* M$ B1 w
String calc; a* Z% |* T* m8 S$ L+ y
try{) Z3 Q2 b) }( n- h5 n
if(args.length==3){1 p1 d% N2 m; s4 f4 P7 C
a = Float.parseFloat(args[0]);+ w" O; _ D* N8 ]4 y! J& K1 U1 L) {
b = Float.parseFloat(args[2]);
9 B5 y. w9 |2 J* a* ]3 J8 w5 o calc = args[1];* v" N% h7 s3 K, L9 ?7 `* y* }! t
if(calc.equals("+")){, ]0 @" Q% S; n
System.out.println(args[0]+args[1]+args[2]+"="+(a+b));
1 u1 y* }( _: j; L3 x8 m }else if(calc.equals("-")){
* ^. H; i' {7 P; `% A System.out.println(args[0]+args[1]+args[2]+"="+(a-b));
1 W; q: X7 `3 u. W; L& _ }else if(calc.equals("x")){& ?7 l9 b% ^4 A! n6 p
System.out.println(args[0]+args[1]+args[2]+"="+(a*b));( r3 S* k; x) p W0 U
}else if(calc.equals("/"))
$ P* `0 C( L. ~ {+ k8 B8 Y/ k/ M# M( {! f2 T6 u
if(b==0)
4 \* h2 `2 w+ Y6 o L9 N) H. z- q: ^( @ {
! k5 z- \. {& k% u( s' W7 V System.out.println("除數不可為 0");
# |, s; u3 q1 Y }else
$ T1 Z4 A3 |. A. N) L6 f8 z( Q {3 g; [& Z& F/ ^( T( H
System.out.println(args[0]+args[1]+args[2]+"="+(a/b));' [1 m$ k) Z! K- c% l
}0 I9 T5 q. `, c3 |1 h
}6 _/ I! V1 H. B3 D) g# \6 c0 B/ Y: ~
else) S5 V. q7 B4 Y# E+ {: q+ H
{, E' P! N# f6 E) i! O. I q' U
System.out.println("第二個引數請使用 + - x / 的其中一種運算符號");; T8 U0 n/ F) ?7 |2 p
System.exit(0);
4 H6 }1 h8 F5 z9 e& u }
6 b4 e5 Z+ e. Q6 i }else{# _4 M* y; g8 I0 c: U) k* L9 c) p4 J
System.out.println("請使用三個引數,如下格式\n 1 + 2");
2 g* V; J" m: J" s6 ~ }
1 M9 P! u$ s4 p7 `, `2 B! C }) L: ?8 Z1 M( {3 A0 T0 z* R
catch(ArrayIndexOutOfBoundsException e): `. o/ F9 l: N) B* s) o: x4 ?2 ?
{) O0 Z/ G1 @. P: e, ~# c
System.out.println("使用引數不對,請使用如下格式\n 1 + 2\n"+e.getMessage());
% s6 Z. s1 B7 [; b. Z# l1 | }/ f& v9 i9 y; ]7 u5 P" H" I
catch(NumberFormatException e)1 {* Y9 Q e6 Q1 r! y* L
{. @3 B( P+ q: b( E2 t
System.out.println("使用引數不對,請使用如下格式\n 1 + 2\n"+e.getMessage());6 p1 {* @9 D: ^! H
}3 \; i( j& Z2 S: g
7 Y3 |6 ]7 ]% k7 q; ?
}
3 J1 L# S2 }& O* V) R4 t: L} |