Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
学ぶ NullPointerException(ヌルポインタ例外) | 文字列
Java基礎
セクション 5.  5
single

single

bookNullPointerException(ヌルポインタ例外)

メニューを表示するにはスワイプしてください

NPE

文字列変数のnull値の概念について説明。 文字列変数を作成して初期化を忘れると、null値が設定される。 一方、int変数を初期化しない場合、値は0になる。

null値を持つ文字列変数の例:

Main.java

Main.java

copy
12345678
package com.example; public class Main { public static void main(String[] args) { String string = null; System.out.println(string); } }

画面に表示される出力はnullであり、コードは動作しているように見える。しかし、null値を持つ変数でメソッドを使用しようとするとどうなるか:

Main.java

Main.java

copy
123456789
package com.example; public class Main { public static void main(String[] args) { String string = null; string.toLowerCase(); System.out.println(string); } }

文字列変数がnull値の場合に、任意のメソッドを呼び出そうとするとNullPointerExceptionが発生。

NPEを回避する方法:

  • 注意深く確認。文字列変数を作成した場合、初期化されているか再確認;
  • 変数を使用する前にnullチェックを実施。
Main.java

Main.java

copy
123456789101112
package com.example; public class Main { public static void main(String[] args) { String string = null; if (string == null) { // null check System.out.println("Can't use methods with string, because value is null"); } else { System.out.println(string); } } }
タスク

スワイプしてコーディングを開始

従業員のメールアドレスを処理するシステムを開発しています。 一部のメールアドレスが欠落(null)している場合があります。 nullでなく、正しい形式のメールアドレスのみを検証して処理する必要があります。

  1. 従業員のメールアドレスの配列が与えられます。
  2. 配列内の各emailをループ処理します。
  3. 各要素について:
    • emailがnullでないことを確認します
    • email@記号が含まれているかを確認します
  4. 両方の条件を満たす場合は、メールアドレスをコンソールに出力します。
  5. それ以外の場合は、 "Invalid or missing email"と出力します。

解答

Switch to desktop実践的な練習のためにデスクトップに切り替える下記のオプションのいずれかを利用して、現在の場所から続行する
すべて明確でしたか?

どのように改善できますか?

フィードバックありがとうございます!

セクション 5.  5
single

single

AIに質問する

expand

AIに質問する

ChatGPT

何でも質問するか、提案された質問の1つを試してチャットを始めてください

some-alt