Guava-preconditions-class

提供:Dev Guides
移動先:案内検索

グアバ-前提条件クラス

前提条件は、メソッドまたはコンストラクターが適切なパラメーターで呼び出されるかどうかをチェックする静的メソッドを提供します。 前提条件をチェックします。 そのメソッドは、失敗するとIllegalArgumentExceptionをスローします。

クラス宣言

以下は com.google.common.base.Preconditions クラスの宣言です-

@GwtCompatible
public final class Preconditions
   extends Object

クラスメソッド

Sr.No Method & Description
1

static void checkArgument(boolean expression)

呼び出しメソッドへの1つまたは複数のパラメーターを含む式の真実性を保証します。

2

static void checkArgument(boolean expression, Object errorMessage)

呼び出しメソッドへの1つまたは複数のパラメーターを含む式の真実性を保証します。

3

static void checkArgument(boolean expression, String errorMessageTemplate, Object. errorMessageArgs)

呼び出しメソッドへの1つまたは複数のパラメーターを含む式の真実性を保証します。

4

static int checkElementIndex(int index, int size)

インデックスが配列、リスト、またはサイズの文字列内の有効な要素を指定していることを確認します。

5

static int checkElementIndex(int index, int size, String desc)

インデックスが、配列、リスト、またはサイズの文字列の有効な要素を指定していることを確認します。

6

static <T> T checkNotNull(T reference)

呼び出しメソッドにパラメーターとして渡されるオブジェクト参照がnullでないことを確認します。

7

static <T> T checkNotNull(T reference, Object errorMessage)

呼び出しメソッドにパラメーターとして渡されるオブジェクト参照がnullでないことを確認します。

8

static <T> T checkNotNull(T reference, String errorMessageTemplate, Object…​ errorMessageArgs)

呼び出しメソッドにパラメーターとして渡されるオブジェクト参照がnullでないことを確認します。

9

static int checkPositionIndex(int index, int size)

インデックスが配列、リスト、またはサイズの文字列内の有効な位置を指定するようにします。

10

static int checkPositionIndex(int index, int size, String desc)

インデックスが配列、リスト、またはサイズの文字列内の有効な位置を指定するようにします。

11

static void checkPositionIndexes(int start, int end, int size)

開始、終了が配列、リスト、またはサイズの文字列内の有効な位置を指定し、順序どおりであることを確認します。

12

static void checkState(boolean expression)

呼び出し元インスタンスの状態を含む式の真理を保証しますが、呼び出し元メソッドへのパラメーターは含みません。

13

static void checkState(boolean expression, Object errorMessage)

呼び出し元インスタンスの状態を含む式の真理を保証しますが、呼び出し元メソッドへのパラメーターは含みません。

14

static void checkState(boolean expression, String errorMessageTemplate, Object…​ errorMessageArgs)

呼び出し元インスタンスの状態を含む式の真理を保証しますが、呼び出し元メソッドへのパラメーターは含みません。

継承されるメソッド

このクラスは、次のクラスからメソッドを継承します-

  • java.lang.Object

前提条件クラスの例

たとえば、* C:/> Guava。*で選択したエディターを使用して、次のJavaプログラムを作成します。

GuavaTester.java

import com.google.common.base.Preconditions;

public class GuavaTester {

   public static void main(String args[]) {
      GuavaTester guavaTester = new GuavaTester();

      try {
         System.out.println(guavaTester.sqrt(-3.0));
      } catch(IllegalArgumentException e) {
         System.out.println(e.getMessage());
      }

      try {
         System.out.println(guavaTester.sum(null,3));
      } catch(NullPointerException e) {
         System.out.println(e.getMessage());
      }

      try {
         System.out.println(guavaTester.getValue(6));
      } catch(IndexOutOfBoundsException e) {
         System.out.println(e.getMessage());
      }
   }

   public double sqrt(double input) throws IllegalArgumentException {
      Preconditions.checkArgument(input > 0.0,
         "Illegal Argument passed: Negative value %s.", input);
      return Math.sqrt(input);
   }

   public int sum(Integer a, Integer b) {
      a = Preconditions.checkNotNull(a, "Illegal Argument passed: First parameter is Null.");
      b = Preconditions.checkNotNull(b, "Illegal Argument passed: Second parameter is Null.");

      return a+b;
   }

   public int getValue(int input) {
      int[] data = {1,2,3,4,5};
      Preconditions.checkElementIndex(input,data.length, "Illegal Argument passed: Invalid index.");
      return 0;
   }
}

結果を確認する

次のように javac コンパイラを使用してクラスをコンパイルします-

C:\Guava>javac GuavaTester.java

GuavaTesterを実行して結果を確認します。

C:\Guava>java GuavaTester

結果をご覧ください。

Illegal Argument passed: Negative value -3.0.
Illegal Argument passed: First parameter is Null.
Illegal Argument passed: Invalid index. (6) must be less than size (5)