public final class Preconditions
Simple static methods to be called at the start of your own methods to verify correct arguments and state. This allows constructs such as
if (count <= 0)="" {="" throw="" new="" illegalargumentexception("must="" be="" positive:="" "="" +="" count);="" }="">
to be replaced with the more compact
checkArgument(count > 0, "must be positive: %s", count);
Note that the sense of the expression is inverted; with Preconditions
you declare what
you expect to be true, just as you do with an assert
or a
JUnit assertTrue
call.
Note:This class is a copy of a very old version of Guava's Preconditions. Please use the current Guava version instead. See Also: "https://google.github.io/guava/releases/21.0/api/docs/com/google/common/base/Preconditions.html"
Static Methods
<T>checkNotNull(T reference, @Nullable Object errorMessage)
public static T <T>checkNotNull(T reference, @Nullable Object errorMessage)
Ensures that an object reference passed as a parameter to the calling method is not null.
Parameters | |
---|---|
Name | Description |
reference |
T an object reference |
errorMessage |
@org.checkerframework.checker.nullness.qual.Nullable java.lang.Object the exception message to use if the check fails; will be converted to a string using String#valueOf(Object) |
Returns | |
---|---|
Type | Description |
T |
the non-null reference that was validated |
checkArgument(boolean expression, @Nullable Object errorMessage)
public static void checkArgument(boolean expression, @Nullable Object errorMessage)
Ensures the truth of an expression involving one or more parameters to the calling method.
Parameters | |
---|---|
Name | Description |
expression |
boolean a boolean expression |
errorMessage |
@org.checkerframework.checker.nullness.qual.Nullable java.lang.Object the exception message to use if the check fails; will be converted to a string using String#valueOf(Object) if not null (a null will not be converted). |
checkArgument(boolean expression, @Nullable String errorMessageTemplate, @Nullable Object[] errorMessageArgs)
public static void checkArgument(boolean expression, @Nullable String errorMessageTemplate, @Nullable Object[] errorMessageArgs)
Ensures the truth of an expression involving one or more parameters to the calling method.
Parameters | |
---|---|
Name | Description |
expression |
boolean a boolean expression |
errorMessageTemplate |
@org.checkerframework.checker.nullness.qual.Nullable java.lang.String a template for the exception message should the check fail. The message is formed using String#format(String, Object...). if not null (a null will not be converted). |
errorMessageArgs |
@org.checkerframework.checker.nullness.qual.Nullable java.lang.Object[] the arguments to be substituted into the message template. |
checkState(boolean expression, @Nullable String errorMessage)
public static void checkState(boolean expression, @Nullable String errorMessage)
Ensures the truth of an expression involving the state of the calling instance.
Parameters | |
---|---|
Name | Description |
expression |
boolean a boolean expression |
errorMessage |
@org.checkerframework.checker.nullness.qual.Nullable java.lang.String the exception message to use if the check fails; will be converted to a string using String#valueOf(Object) if not null (a null will not be converted). |
checkState(boolean expression, @Nullable String errorMessageTemplate, @Nullable Object[] errorMessageArgs)
public static void checkState(boolean expression, @Nullable String errorMessageTemplate, @Nullable Object[] errorMessageArgs)
Ensures the truth of an expression involving the state of the calling instance.
Parameters | |
---|---|
Name | Description |
expression |
boolean a boolean expression |
errorMessageTemplate |
@org.checkerframework.checker.nullness.qual.Nullable java.lang.String a template for the exception message should the check fail. The message is formed using String#format(String, Object...). if not null (a null will not be converted). |
errorMessageArgs |
@org.checkerframework.checker.nullness.qual.Nullable java.lang.Object[] the arguments to be substituted into the message template. |