【问题标题】:Null check vs Objects.requireNonNull in findFragmentByTag空值检查与 findFragmentByTag 中的 Objects.requireNonNull
【发布时间】:2019-12-11 08:05:18
【问题描述】:

由于我一直在 Android findFragmentByTag() 中进行空检查,因此代码检查建议我添加 Objects.requireNonNull() 方法。当我应用此检查时,代码检查不再发出警告。那么哪个更好呢?

我已经通过了这个SO Question。根据我的理解(我可能错了),无论如何都会抛出 NullPointerException

           //3. Hide analytics fragment
            //if (fragmentManager.findFragmentByTag(TAG_ANALYTICS_FRAGMENT) != null) {
                ft.hide(Objects.requireNonNull(fragmentManager.findFragmentByTag(TAG_ANALYTICS_FRAGMENT)));
            //}
            //4. Hide settings fragment
            if (fragmentManager.findFragmentByTag(TAG_SETTINGS_FRAGMENT) != null) {
                ft.hide(fragmentManager.findFragmentByTag(TAG_SETTINGS_FRAGMENT));
            }

【问题讨论】:

    标签: java android nullpointerexception


    【解决方案1】:

    来自Objects.requireNonNullJavadoc

    此方法主要用于在方法和构造函数中进行参数验证

    也就是说,使用它的好处是您的代码可以从显式if null 检查导致的一些噪音中解脱出来。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-08-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多