switch裡面要用字串的話,JDK必須要使用1.7以上,還有case後面不該緊接著判斷字串,應該要加一個空白,例如:case "+":
1 S3 t8 h' `1 n9 h! ] @因為你或許不能掌握考試時JDK的版本,switch-case那邊我建議你用if-else-if取代,程式範例如下:. e/ [& r/ P/ ?; Q2 N% f
- v( v: a4 j, F7 M' t) r3 C9 t# Opublic class TQC206
( b& b$ U9 w/ o, ~) o6 m, l{
/ U7 ]; ~" X8 F public static void main(String args[]); s% \( |* h$ T) M; ~
{+ Z, U$ a3 P% g+ k
float a,b;
9 g6 s, V; m; e' r. ~. t; R' o String calc;$ h: h2 X6 }! {5 e, Q( k- |
try{
3 ~2 D& N) D- C4 D5 T# l if(args.length==3){2 h' t! n1 x/ @8 {2 b( [
a = Float.parseFloat(args[0]);" W9 x% r7 U- d0 D+ Z: q
b = Float.parseFloat(args[2]);
6 d. [2 S4 F" w W! d3 p+ S calc = args[1];
9 G" u* h9 L( s/ l& G$ X/ N if(calc.equals("+")){9 x. L9 T# n4 E5 t4 u D
System.out.println(args[0]+args[1]+args[2]+"="+(a+b));
+ t* @, l$ H/ @! r7 O- D+ S5 { }else if(calc.equals("-")){
# E* n/ w8 p4 P( T System.out.println(args[0]+args[1]+args[2]+"="+(a-b));, P; j) {' I' ^% h% ]
}else if(calc.equals("x")){
; F# |* w2 n( g$ e5 W System.out.println(args[0]+args[1]+args[2]+"="+(a*b));; f5 M0 m- ]; z: T. n0 l
}else if(calc.equals("/"))5 G1 N6 E$ _5 L0 o- }# k) ~4 I! u
{
% a) g$ B& i9 o if(b==0)
$ D8 H2 i( t* L5 U5 K" f {
0 d( U H0 d7 i& x8 k2 P System.out.println("除數不可為 0");; M0 G& Z& F1 c& H
}else2 M$ s4 Z* r2 B P$ I' ~
{4 t2 ]3 E" l; D
System.out.println(args[0]+args[1]+args[2]+"="+(a/b));
1 z/ \8 k0 T: Q }
+ R8 W6 Y; X& p0 k }
( B. T9 o/ h: H( G8 c& \ else
; S8 M* ~# C7 l: c {* Y7 H! h% ~) n4 t$ ]9 \& x9 t
System.out.println("第二個引數請使用 + - x / 的其中一種運算符號");1 R. C l/ @6 J. c$ V
System.exit(0);5 i. |" r8 Q' J `9 g+ p" r
}3 W+ u3 e! F* [
}else{: P6 d6 g. W) K) |2 I! z. ?
System.out.println("請使用三個引數,如下格式\n 1 + 2");
& \6 m5 y. {1 x9 ?3 M: |# m }/ A3 z. B' v* L/ M7 {
}
" {/ l5 f1 ^; x- T catch(ArrayIndexOutOfBoundsException e)
% j% u* a$ L/ n0 H9 } {- `% U3 O4 ~. V1 o: o# E( A5 _
System.out.println("使用引數不對,請使用如下格式\n 1 + 2\n"+e.getMessage());
8 [% p8 d( W5 G; l }1 T: y9 A% S2 J! {
catch(NumberFormatException e): Z7 @. h; B- E+ T; o2 E( l# R, t
{
1 n, c- a1 j) t8 t System.out.println("使用引數不對,請使用如下格式\n 1 + 2\n"+e.getMessage());, v# g$ j+ k6 I, ^( H Z4 p
}2 X4 I: t3 _8 p1 q
* a( v! J$ M: a. g' G: H: Z
}
/ H0 z4 L* F J, _, {} |