switch裡面要用字串的話,JDK必須要使用1.7以上,還有case後面不該緊接著判斷字串,應該要加一個空白,例如:case "+":
. l, S$ y' o; K6 y4 b4 [因為你或許不能掌握考試時JDK的版本,switch-case那邊我建議你用if-else-if取代,程式範例如下:
& ?9 b. v/ W+ ^
7 N1 M0 q0 @& Jpublic class TQC206( ?4 w( K+ d& ]$ d5 u/ U
{
" x& b& q8 r. Y; {* g% M: r: ^9 l" D& j. B public static void main(String args[])
! T( \% J& ^9 D7 ?' P' @3 V! V {* b6 z4 k5 r* A4 J
float a,b;
3 M4 b2 i/ x, s" S String calc;
- ]3 B# \% ^; v, K$ m9 d try{
* _% r3 B. H3 {; E( W4 J& ` if(args.length==3){
5 e! v% }, c; v6 n a = Float.parseFloat(args[0]);$ y3 G1 X( |; W7 n$ \! Y) q
b = Float.parseFloat(args[2]);, h6 @9 S) e- G
calc = args[1];
9 I8 W# W8 F+ \, X$ ` if(calc.equals("+")){
) K/ I' C5 q9 f# V2 M9 J) t System.out.println(args[0]+args[1]+args[2]+"="+(a+b));
% H( A; \3 Q% u- N) E }else if(calc.equals("-")){! x: M- q. c2 R9 x, U6 ~
System.out.println(args[0]+args[1]+args[2]+"="+(a-b));
+ P+ {, G! C5 J! m! l }else if(calc.equals("x")){# }2 _0 a- }1 L2 ]/ ?/ V: ^
System.out.println(args[0]+args[1]+args[2]+"="+(a*b));9 X9 T1 u4 U0 s8 a
}else if(calc.equals("/"))+ F- r0 n) P: w7 a& F$ a
{* z. c( r W7 G7 l7 Q% \
if(b==0)
/ |. W" k( F% v" w/ _ {
2 o1 ?6 c+ w- o% V! B4 q5 ], w System.out.println("除數不可為 0");) V; z, Z, t/ v5 S% P0 ^. ~0 [
}else
- x7 D5 H$ J: C& P2 {! C {: w& J4 c1 z/ q) x
System.out.println(args[0]+args[1]+args[2]+"="+(a/b));7 f4 e1 q+ H& T5 m
}
! t2 {$ q$ h u; M) L8 p$ ?- V# ] }
6 ]0 k0 h ?, P) e! M, l, U* F else
/ h4 p9 w' y$ L) J+ ^, S+ e {2 g. N6 G4 j" X: C! p
System.out.println("第二個引數請使用 + - x / 的其中一種運算符號");5 O9 ]; D3 d* h5 E
System.exit(0);& ?$ d% x$ \! ^9 G
}
1 T1 R9 r0 j; r n) N }else{8 R7 l: k; `* u! ^
System.out.println("請使用三個引數,如下格式\n 1 + 2");
7 H) y9 w- f) G* d3 |+ f: h' e" Y }5 N) T' L! S7 [- |
}
. L$ i" Z! w3 X) I( x! L catch(ArrayIndexOutOfBoundsException e)
) f/ P1 L; K5 Z! e' w# |7 d {
; t- Z8 v# h& K% [: d- k: F System.out.println("使用引數不對,請使用如下格式\n 1 + 2\n"+e.getMessage());
/ r5 }, F, }4 }, J# ~3 W }! }& Q# u7 v# I, C5 C- U/ S C% B7 ~
catch(NumberFormatException e), d; @+ K% J2 p x- L, a/ r
{' d" j6 E% ? W g, e. r! }2 C
System.out.println("使用引數不對,請使用如下格式\n 1 + 2\n"+e.getMessage());. U% l! k* ?" Q& M y, t5 `
}
2 `; \% t; ?9 Z) B$ _$ ^
4 W) B' o. p. o }4 N0 m4 A$ U. Q7 Z7 b& ~
} |