パッケージ jakarta.json

インターフェース JsonNumber

すべてのスーパーインターフェース:
JsonValue

public interface JsonNumber extends JsonValue
不変の JSON 数値。

実装では、BigDecimalSE オブジェクトを使用して内部的に数値を格納できます。BigDecimal オブジェクトは、int BigDecimal(int)SElong BigDecimal(long)SEBigInteger BigDecimal(BigInteger)SEdouble BigDecimal.valueOf(double)SE、および String BigDecimal(String)SE の型から作成できます。このクラスのメソッドセマンティクスの一部は、BigDecimal セマンティクスを使用して定義されています。

  • メソッドの詳細

    • isIntegral

      boolean isIntegral()
      この JSON 番号が整数の場合、true を返します。このメソッドのセマンティクスは、bigDecimalValue().scale() を使用して定義されています。スケールがゼロの場合、整数型と見なされます。この整数型情報を使用して、適切なアクセサーメソッドを呼び出し、次の例のように数値を取得できます。
       
       JsonNumber num = ...
       if (num.isIntegral()) {
           num.longValue();     // or other methods to get integral value
       } else {
           num.doubleValue();   // or other methods to get decimal number value
       }
       
       
      戻り値:
      この数値が整数の場合は true、それ以外の場合は false
    • intValue

      int intValue()
      この JSON 番号を int として返します。この変換では、数値の全体的な大きさと精度に関する情報が失われ、反対の符号の結果が返される可能性があることに注意してください。
      戻り値:
      JSON 番号の int 表現
      関連事項:
    • intValueExact

      int intValueExact()
      この JSON 番号を int として返します。
      戻り値:
      JSON 番号の int 表現
      例外:
      ArithmeticExceptionSE - 数値にゼロ以外の小数部がある場合、または int に適合しない場合
      関連事項:
    • longValue

      long longValue()
      この JSON 番号を long として返します。この変換では、数値の全体的な大きさと精度に関する情報が失われ、反対の符号の結果が返される可能性があることに注意してください。
      戻り値:
      JSON 番号の long 表現。
      関連事項:
    • longValueExact

      long longValueExact()
      この JSON 番号を long として返します。
      戻り値:
      JSON 番号の long 表現
      例外:
      ArithmeticExceptionSE - 数値にゼロ以外の小数部がある場合、または long に収まらない場合
      関連事項:
    • bigIntegerValue

      BigIntegerSE bigIntegerValue()
      この JSON 番号を BigIntegerSE オブジェクトとして返します。これは bigDecimalValue().toBigInteger() の便利なメソッドです。この変換では、数値の全体的な大きさと精度に関する情報が失われ、反対の符号の結果が返される可能性があることに注意してください。
      戻り値:
      JSON 番号の BigInteger 表現。
      関連事項:
    • bigIntegerValueExact

      BigIntegerSE bigIntegerValueExact()
      この JSON 番号を BigIntegerSE オブジェクトとして返します。これは bigDecimalValue().toBigIntegerExact() の便利なメソッドです。
      戻り値:
      JSON 番号の BigIntegerSE 表現
      例外:
      ArithmeticExceptionSE - 数値にゼロ以外の小数部分がある場合
      関連事項:
    • doubleValue

      double doubleValue()
      この JSON 番号を double として返します。これは bigDecimalValue().doubleValue() の便利なメソッドです。この変換により、数値の全体的な大きさと精度に関する情報が失われるだけでなく、反対の符号の結果が返される可能性があることに注意してください。
      戻り値:
      JSON 番号の double 表現
      関連事項:
    • bigDecimalValue

      BigDecimalSE bigDecimalValue()
      この JSON 番号を BigDecimalSE オブジェクトとして返します。
      戻り値:
      JSON 番号の BigDecimalSE 表現
    • numberValue

      default NumberSE numberValue()
      この JSON 番号を NumberSE オブジェクトとして返します。
      戻り値:
      JSON 番号の NumberSE 表現
      導入:
      1.1
    • toString

      StringSE toString()
      JSON 番号の JSON テキスト表現を返します。この表現は BigDecimal.toString() と同等です。
      次で指定:
      インターフェース JsonValuetoString 
      オーバーライド:
      クラス ObjectSEtoString 
      戻り値:
      数値の JSON テキスト表現
    • equals

      boolean equals(ObjectSE obj)
      指定されたオブジェクトをこの JsonNumber オブジェクトと比較して等しいかどうかを確認します。指定されたオブジェクトの型も JsonNumber であり、それらの bigDecimalValue() オブジェクトが等しい場合にのみ、true を返します。
      オーバーライド:
      クラス ObjectSEequalsSE 
      パラメーター:
      obj - この JsonNumber と等しいかどうかを比較するオブジェクト
      戻り値:
      指定されたオブジェクトがこの JsonNumber と等しい場合は true 
    • hashCode

      int hashCode()
      この JsonNumber オブジェクトのハッシュコード値を返します。JsonNumber オブジェクトのハッシュコードは、その bigDecimalValue() オブジェクトのハッシュコードとして定義されます。
      オーバーライド:
      クラス ObjectSEhashCode 
      戻り値:
      この JsonNumber オブジェクトのハッシュコード値