クラス NullableUtils
java.lang.ObjectSE
org.springframework.data.util.NullableUtils
 使用すべきではありません。
 パッケージ、クラス、メソッドで宣言された null 可能性ルールをイントロスペクトするユーティリティメソッド。
null 許容ルールは、Nullable、NonNullApi、JSR-305 javax.annotation.Nonnull アノテーションを使用して宣言されます。デフォルト(アノテーションを使用しない場合)では、パッケージとその型は、戻り値とメソッドパラメーターに null 値を許可するものとみなされます。null 許容ルールは、Spring の NonNullApi などの JSR-305 メタアノテーションを使用してパッケージにアノテーションを付与することで表現されます。パッケージ内のすべての型はパッケージルールを継承します。サブパッケージは null 許容ルールを継承しないため、サブパッケージ自体にアノテーションを付与する必要があります。
@org.jspecify.annotations.NullMarked package com.example;
 Nullable は、メソッドにそれぞれパラメーターにアノテーションを付けることにより、メソッドの戻り値またはメソッドパラメーターの null 値を選択的に許可します。
 public class ExampleClass {
        String shouldNotReturnNull(@Nullable String acceptsNull, String doesNotAcceptNull) {
                // …
        }
        @Nullable
        String nullableReturn(String parameter) {
                // …
        }
 }
 javax.annotation.Nonnull は、メタアノテーションの作成に適しており、javax.annotation.Nonnull#when() を介して表現します。この場合、非 null 可能性が適用されます。
- 導入:
- 2.0
- 作成者:
- Mark Paluch
- 関連事項:
- NonNullApi
- Nullable
 
- メソッドのサマリー修飾子と型メソッド説明- static boolean- isExplicitNullable- (MethodParameter methodParameter) 使用すべきではありません。- MethodParameterが null 許容と見なされるように明示的にアノテーションが付けられているかどうかを判別します。- static boolean- isNonNull- (@Nullable AnnotatedElementSE element, ElementTypeSE elementType) 使用すべきではありません。- AnnotatedElementSE のスコープ内の- ElementTypeSE が NULL 以外の値を必要とするかどうかを判別します。- static boolean- isNonNull- (ClassSE<?> type, ElementTypeSE elementType) 使用すべきではありません。- typeのスコープ内の- ElementTypeSE が NULL 以外の値を必要とするかどうかを判別します。- static boolean- isNonNull- (MethodSE method, ElementTypeSE elementType) 使用すべきではありません。- MethodSE のスコープ内の- ElementTypeSE が NULL 以外の値を必要とするかどうかを判別します。
- メソッドの詳細- isNonNull使用すべきではありません。- MethodSE のスコープ内の- ElementTypeSE が null 以外の値を必要とするかどうかを判別します。非 null 可能性ルールは、クラスとパッケージのアノテーションから検出されます。- javax.annotation.Nonnullが- javax.annotation.meta.When#ALWAYSに設定されている場合、null 以外が適用されます。- パラメーター:
- method- インスペクションする方法。
- elementType- 要素型。
- 戻り値:
- ElementTypeSE がデフォルトで null 値を許可する場合は false。メソッドの戻り値の型が- primitiveの場合は true、メソッドが void の場合は false。
- 関連事項:
- isNonNull(Annotation, ElementType)
 
 
- isNonNull使用すべきではありません。- typeのスコープ内の- ElementTypeSE が null 以外の値を必要とするかどうかを判別します。非 null 可能性ルールは、クラスとパッケージのアノテーションから検出されます。- javax.annotation.Nonnullが- javax.annotation.meta.When#ALWAYSに設定されている場合、null 以外が適用されます。- パラメーター:
- type- インスペクションするクラス。
- elementType- 要素型。
- 戻り値:
- ElementTypeSE が null 値を許可する場合は false。指定された型が- primitiveの場合は true。
- 関連事項:
- isNonNull(Annotation, ElementType)
 
 
- isNonNull@Contract("null, _ -> false") public static boolean isNonNull- (@Nullable AnnotatedElementSE element, ElementTypeSE elementType) 使用すべきではありません。- AnnotatedElementSE のスコープ内の- ElementTypeSE が null 以外の値を必要とするかどうかを判別します。このメソッドは、アノテーション付き要素からデフォルトの- javax.annotation.Nonnull nullabilityルールを決定します- パラメーター:
- element- 宣言のスコープは、- PackageSE、- ClassSE、または- MethodSE になります。null にすることもできます。
- elementType- 要素型。
- 戻り値:
- ElementTypeSE がデフォルトで null 値を許可する場合、または指定された- AnnotatedElementSE が null の場合は false です。
 
- isExplicitNullable使用すべきではありません。- MethodParameterが null 許容と見なされるように明示的にアノテーションが付けられているかどうかを判別します。null 可能性ルールは、メソッドとパラメーターのアノテーションから検出されます。- javax.annotation.Nonnullが- javax.annotation.meta.When#UNKNOWN、- javax.annotation.meta.When#NEVER、- javax.annotation.meta.When#MAYBEのいずれかに設定されている場合、- MethodParameterは null 可能と見なされます。- パラメーター:
- methodParameter- インスペクションするメソッドパラメーター。
- 戻り値:
- パラメーターが null 許容の場合は true、それ以外の場合は false。
 
 
Nullnessが推奨されています。