0
Androidライブラリの一般的なチェックを抽象化し、Nullabilityアノテーションを同時に追加しようとしていますが、警告が表示されています。ヌルチェックが別のメソッド/クラスにある場合の@NonNullの使用
のは、私はこのライブラリの例の方法を持っているとしましょう:
その後、いくつかの処理のためのライブラリの別の内部メソッドを呼び出しますpublic int method(@Nullable final String param) {
final int precheckResult = LibPrechecks.checkForMethod(param); // Does check for param not being null
if (LibPrechecks.checksFailed(precheckResult)) {
return precheckResult;
}
// Rest of logic
return internalMethod(param); // IDE is complaining that param cannot be null
}
:「事前チェック」
private int internalMethod(@NonNull String param) {
// processing logic
return 0;
}
をそして、ここでの例でありますクラス:
public class LibPrechecks {
public static int checkForMethod(@Nullable final String param) {
if (param == null) {
return -1;
}
return 0;
}
public static boolean checksFailed(final int precheckResult) {
return precheckResult < 0;
}
}
nullにエラーコードを戻しています内部メソッドがparamで呼び出されるまでにnullではないが、IDEはまだ不満であり、paramがnullである可能性があると考えます。 Android Studioでこの警告を修正し、これを適切に行うにはどうすればよいですか?