switch裡面要用字串的話,JDK必須要使用1.7以上,還有case後面不該緊接著判斷字串,應該要加一個空白,例如:case "+":8 [; a: }# ^" n+ f6 k; e
因為你或許不能掌握考試時JDK的版本,switch-case那邊我建議你用if-else-if取代,程式範例如下:
4 W! `; W" T% x: g# q
5 \$ F; Y4 q' J3 F8 Npublic class TQC206- _0 s4 E9 z. R! U- i+ [4 O2 q
{* Z* i+ t3 m/ T( J! r' E/ Q. d
public static void main(String args[])
% k# m) H' o1 \% l0 M {! U- a$ r0 m) C3 G- y) ~
float a,b;' p6 x" C6 Q1 Z
String calc;9 Q3 w& X8 Z3 k$ V
try{
' V' X F0 {6 _- h' ~ if(args.length==3){8 l, v' A) t0 ?) ]& {
a = Float.parseFloat(args[0]);# X l" A) W; W
b = Float.parseFloat(args[2]);
4 x* a; L/ E! V, Z( g calc = args[1];7 }9 g1 O, I; L4 J" G
if(calc.equals("+")){. i* {- b; Y, l
System.out.println(args[0]+args[1]+args[2]+"="+(a+b));. r6 o; S& Y9 h: N5 s# @' }; p
}else if(calc.equals("-")){
$ H9 C( l: m+ ?$ k System.out.println(args[0]+args[1]+args[2]+"="+(a-b)); s6 p" f/ R6 Z* S4 i% q3 T
}else if(calc.equals("x")){1 z \7 B: W' ~$ T' X( c
System.out.println(args[0]+args[1]+args[2]+"="+(a*b));
* i/ K+ e2 ^1 ` }else if(calc.equals("/"))
+ w: I1 c- u- \; O6 ^ O% | {
) v' y/ S- c4 k if(b==0)8 B3 U4 H) Y- R6 s: @* {7 {4 h
{! P0 ?: `3 y# O$ r2 i! R% e
System.out.println("除數不可為 0");
2 n& l, g l ?6 b `+ z# f7 W$ X }else
; n3 S$ n- ? d* i. I {
4 b7 N$ ]* H; X5 } System.out.println(args[0]+args[1]+args[2]+"="+(a/b));
; ]- G. {, t3 k6 x, d2 p; s. t }! N( m8 d* }+ s: Z$ C3 Z
}4 X @+ G& n# K' Z
else7 J' G' U+ X6 c d0 E4 x
{2 x' e; ^) n* L/ m
System.out.println("第二個引數請使用 + - x / 的其中一種運算符號");- ?, ]$ l$ f9 w4 _" ~/ K
System.exit(0);
3 V8 _. \4 @6 Q- }( v! R8 t1 f* L }
$ V$ b( x, L' p" O1 W1 f! F+ w& s) l }else{
/ d8 u9 w) ]7 I) P System.out.println("請使用三個引數,如下格式\n 1 + 2");$ C D$ b2 a" J" [2 X- Q
}. d- z) R- w$ i0 ~6 |
}! _2 O; M' [" W% r' ]
catch(ArrayIndexOutOfBoundsException e)
' Z( B P8 w7 d1 c {4 _+ a7 H' q- K0 f
System.out.println("使用引數不對,請使用如下格式\n 1 + 2\n"+e.getMessage());+ @3 u* Y) u7 K) i5 ]& S
}! j/ C) y+ W" ?$ |
catch(NumberFormatException e)
) X1 E' {( i9 I, P1 z; e/ \2 [ {8 M, M# P8 h# ^; V; `
System.out.println("使用引數不對,請使用如下格式\n 1 + 2\n"+e.getMessage());
" ]4 Y4 m8 L4 E' r6 x6 U* l! I/ H }
# R* n) {! G0 T+ ^
: G( l6 k/ d. O6 q9 ]% x }
5 j' K4 \6 q" l' s. J} |