Help us understand the problem. What is going on with this article?

クラス間での値の受け渡し時に気をつけることgetExtra(), putExtra()

More than 5 years have passed since last update.

他クラスに値を渡すときはputExtra()やgetIntent().getExtra()を使いますが、putされていない状態でgetした場合はgetExtra()の中身はnullになります。

ネット上で調べていると

if(getIntent().getStringExtra(“example").isEmpty()){
ーーーーーー
}else{  
ーーーーーー
}

と書かれたコードを何個か見かけましたが、このコードが出てくる以前にputExtra(“example”)が呼ばれてない時の値は0ではなくnullになるはずですのでこれだとクラッシュします。

よって

String home = getIntent().getStringExtra("home");
if (home != null) {// 定義されている
        ーーーーー
        } else {//まだ定義されていない
        ーーーーー
        }

とすれば定義されていないStringをif内で扱う時もクラッシュしません。

Yoshi66
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away