クラス JSONPath

java.lang.Object
io.github.takenoko4096.json.JSONPath

@NullMarked public final class JSONPath extends Object
json構造の任意の位置にアクセスするためのパスを表現します。
  • メソッドの詳細

    • access

      public <T> @Nullable T access(JSONObject jsonObject, Function<JSONPath.JSONPathReference<?,?>, @Nullable T> function, boolean isForcedAccess) throws JSONPath.JSONInaccessiblePathException
      例外:
      JSONPath.JSONInaccessiblePathException
    • length

      public int length()
      jsonパスの長さを返します。
      戻り値:
      jsonパスの長さ。例えば、 "foo.bar[0].baz" は4を返します。
    • slice

      public JSONPath slice(int begin, int end)
      jsonパスの部分パスを作成します。
      パラメータ:
      begin - 開始位置。
      end - 終了位置。この値は含まれません。
      戻り値:
      切り取られた部分パス。完全なコピーであり、元のオブジェクトとは関連しません。
    • parent

      public JSONPath parent()
      終端のアクセスを取り除いた新しいパスを返します。
      戻り値:
      slice(0, length() - 2) の結果に等しくなります。
    • toString

      public String toString()
      オーバーライド:
      toString クラス内 Object
    • hashCode

      public int hashCode()
      オーバーライド:
      hashCode クラス内 Object
    • equals

      public boolean equals(@Nullable Object obj)
      オーバーライド:
      equals クラス内 Object
    • of

      public static JSONPath of(String path) throws JSONParseException
      文字列からjsonパスを作成します。
      パラメータ:
      path - jsonパス
      戻り値:
      jsonパスオブジェクト
      例外:
      JSONParseException - パスが不正な場合。