JAVA:NULLポインタ例外エラー

こんにちはすべて私はいくつかのコードを書いていて、Null Pointer Exceptionを受け取り続けています。

今、私はnullポインタがその使用しようとしている値がnullであることを知っていますが、私は問題を解決する方法を考え出すことができないようです。 (エラーの発生した回線は表示されません。)

   public static void getMenuChoice(Dog s) {
      int LCV = 0;
     Scanner in = null;//create a scanner object
  do {
     System.out.println("Welcome to the Input Menu");
     System.out.println("1: Assign the name");
     System.out.println("2: Assign the owner");
     System.out.println("3: Assign the age");
     System.out.println("4: Assign the weight");
     System.out.println("5: Assign the breed");
     System.out.println("6: Assign the time");
     System.out.println("7: Display Dog Information");
     System.out.println("8: Quit");
     System.out.print("Choose a Menu Option => ");


     ****************int input = in.nextInt();*********************

     switch (input) {
        case 1:
           System.out.println("Please Enter the Dogs name");
           s.setDogName(in.next());
           break;
        case 2:
           System.out.println("Please Enter the Owners name");
           s.setOwnerName(in.next());
           break;
        case 3:
           System.out.println("Please Enter the Dogs age");
           s.setDogAge(in.nextDouble());
           break;
        case 4:
           System.out.println("Please Enter the Dogs weight");
           s.setWeight(in.nextDouble());
           break;
        case 5:
           System.out.println("Please Enter the Dogs breed");
           s.setDogName(in.next());
           break;
        case 6:
           System.out.println("Please Enter the Time");
           s.setTime(in.nextDouble());
           break;
        case 7:
           System.out.println(s);
           break;
        case 8:
           LCV = 8;
           break;
     }
  } while (LCV != 8);

}

2
さて、あなたはあなたのスキャナを初期化しません… null を除いて
追加された 著者 fge,
本当の質問は、なぜこのタグがc ++なのかということです。
追加された 著者 Lawrence Aiello,
本当の質問は、なぜこのタグがc ++なのかということです。
追加された 著者 Lawrence Aiello,
c ++が推奨タグでした。コミュニティーへの非常に新しいメンバーとして、私は提案タグを使って行く傾向があります。
追加された 著者 SynGaren NA,
c ++が推奨タグでした。コミュニティーへの非常に新しいメンバーとして、私は提案タグを使って行く傾向があります。
追加された 著者 SynGaren NA,
c ++が推奨タグでした。コミュニティーへの非常に新しいメンバーとして、私は提案タグを使って行く傾向があります。
追加された 著者 SynGaren NA,

6 答え

スキャナが初期化されていません

Scanner in = new Scanner(System.in); //instead of  Scanner in = null;

だからあなたがやっているとき

in.nextInt();  //null.nextInt()

you are getting NullPointerException

パブリッククラス NullPointerException はRuntimeExceptionを拡張します

     

オブジェクトが存在する場合にアプリケーションがnullを使用しようとしたときにスローされます。   必須。これらは次のとおりです。

     
      
  • nullオブジェクトのインスタンスメソッドを呼び出す。
  •   
  • nullオブジェクトのフィールドへのアクセスまたは変更
  •   
  • nullの長さを配列のように解釈します。
  •   
  • nullのスロットを配列のようにアクセスまたは変更する。
  •   
  • まるでそれがThrowable値であるかのようにnullを投げます。
  •   

ドキュメント

2
追加された

スキャナが初期化されていません

Scanner in = new Scanner(System.in); //instead of  Scanner in = null;

だからあなたがやっているとき

in.nextInt();  //null.nextInt()

you are getting NullPointerException

パブリッククラス NullPointerException はRuntimeExceptionを拡張します

     

オブジェクトが存在する場合にアプリケーションがnullを使用しようとしたときにスローされます。   必須。これらは次のとおりです。

     
      
  • nullオブジェクトのインスタンスメソッドを呼び出す。
  •   
  • nullオブジェクトのフィールドへのアクセスまたは変更
  •   
  • nullの長さを配列のように解釈します。
  •   
  • nullのスロットを配列のようにアクセスまたは変更する。
  •   
  • まるでそれがThrowable値であるかのようにnullを投げます。
  •   

ドキュメント

2
追加された

スキャナが初期化されていません

Scanner in = new Scanner(System.in); //instead of  Scanner in = null;

だからあなたがやっているとき

in.nextInt();  //null.nextInt()

you are getting NullPointerException

パブリッククラス NullPointerException はRuntimeExceptionを拡張します

     

オブジェクトが存在する場合にアプリケーションがnullを使用しようとしたときにスローされます。   必須。これらは次のとおりです。

     
      
  • nullオブジェクトのインスタンスメソッドを呼び出す。
  •   
  • nullオブジェクトのフィールドへのアクセスまたは変更
  •   
  • nullの長さを配列のように解釈します。
  •   
  • nullのスロットを配列のようにアクセスまたは変更する。
  •   
  • まるでそれがThrowable値であるかのようにnullを投げます。
  •   

ドキュメント

2
追加された

NullPointerException は、インスタンス化されていない変数( null を指す変数)を間接参照していることを意味します。これが in の宣言です。

Scanner in = null; 

あなたはここにnull変数を持っています。

int input = in.nextInt();

これにより、NullPointerExceptionが発生します。どういうわけか in をインスタンス化する必要があります

Scanner in = new Scanner(System.in);
1
追加された

NullPointerException は、インスタンス化されていない変数( null を指す変数)を間接参照していることを意味します。これが in の宣言です。

Scanner in = null; 

あなたはここにnull変数を持っています。

int input = in.nextInt();

これにより、NullPointerExceptionが発生します。どういうわけか in をインスタンス化する必要があります

Scanner in = new Scanner(System.in);
1
追加された

NullPointerException は、インスタンス化されていない変数( null を指す変数)を間接参照していることを意味します。これが in の宣言です。

Scanner in = null; 

あなたはここにnull変数を持っています。

int input = in.nextInt();

これにより、NullPointerExceptionが発生します。どういうわけか in をインスタンス化する必要があります

Scanner in = new Scanner(System.in);
1
追加された