import java.util.Scanner;
import java.util.InputMismatchException;
public class divide {
public static void main(String[] args) {
Scanner kb = new Scanner (System.in);
int a,b;
try{
System.out.println("enter 2 number ");
a = kb.nextInt();
b = kb.nextInt();
int c = a/b;
System.out.println("div="+c);
}
catch(ArithmeticException e)
{
System.out.println("please enter non 0 in deno");
}
catch (InputMismatchException e2)
{
System.out.println("please input int only");
System.exit(0);
}
int d= a+b;
System.out.println("sum="+d);
}
}
divide.java:38:エラー:変数の初期化されていない可能性があります int型のD = A + B; ^ divide.java:38:エラー:変数bが初期化されていない可能性があります int d = a + b;あなたは、道のtry/catchブロックの作品を覚えておいてください、あなたに変数
int a =0,b=0;
コンパイラは、あなたの質問のタイトル – wero
ローカル変数は初期値を持たない承認しません。変数をある値で初期化する必要があります。このリンクを参照してください。http://www.tutorialspoint.com/java/java_variable_types.htm –
これはtry/catchとは関係ありません。変数を初期化していないだけなので、コンパイラは、変数の使用時に初期化されることを保証することはできません。 – David