私はJavaが初めてで、ユーザー入力を取得し、入力の各行を変数として保存し、各値を返して別の場所に渡すことができるようにしようとしています。コンパイルしようとすると、変数の大きさが見つからないことがわかります。他のものも見つからないと思います。これは、「try」内で変数を宣言したが、return ステートメントがそれらを受け入れるように変数を取得する方法がわからないためだと推測しています。コードは次のとおりです。
public Earthquake userAddEarthquake()
{
Scanner scanner = new Scanner(System.in);
try{
// convert the string read from the scanner into Integer type
System.out.println("Please Enter An Earthquake Magnitude: ");
Double magnitude = Double.parseDouble(scanner.nextLine());
System.out.println("Please Enter The Earthquakes Latitude Position: ");
scanner = new Scanner(System.in);
Double positionLatitude = Double.parseDouble(scanner.nextLine());
System.out.print("Please Enter The Earthquakes Longitude Position: ");
scanner = new Scanner(System.in);
Double positionLongitude = Double.parseDouble(scanner.nextLine());
System.out.print("Please Enter The Year That The Earthquake Occured: ");
scanner = new Scanner(System.in);
int year = Integer.parseInt(scanner.nextLine());
System.out.println("Magnitude = " + magnitude);
}
catch(NumberFormatException ne){
System.out.println("Invalid Input");
}
finally{
scanner.close();
}
return new Earthquake(magnitude, positionLatitude, positionLongitude, year);
}