add()メソッドが4ではなく0を返す理由を誰かに説明してもらえますか?「無効な」文字列番号が指定されている場合(たとえば4つ)にint0を使用しようとしています。文字列引数3,4/3、4 / 3、4 /については正しい結果が得られていますが、3、4についてはそうではありません。
私が間違っていることのヒントを教えてください。ありがとう!
public class Numbers2
{
public static void main(String[] args) {
System.out.println(add("d","4"));
} // main() method
public static int add(String a, String b)
{
int x = 0;
int y = 0;
try{
x = Integer.parseInt(a);
y = Integer.parseInt(b);
System.out.println("No exception: " + (x+y));
return x + y;
}
catch (NumberFormatException e){
if(x != (int) x ){
x = 0;
}
if(y != (int) x ){
y = 0;
}
return x + y;
}
} // add() method
} // class