RLMDecimal128

Objective-C

@interface RLMDecimal128 : NSObject <NSCopying>

迅速

@_nonSendable(_assumed) class RLMDecimal128 : NSObject, NSCopying, @unchecked Sendable

128 位 IEEE 754-2008 十进制浮点数。

此类型类似于 Swift 的内置 Decimal 类型,但分配位的方式不同,从而导致可表示的范围不同。 (NS)Decimal 存储最多 38 位的有效数字和从 -128 到 127 的指数,而此类型可存储最多 34 位的有效数字和从 -6143 到 6144 的指数。

  • 创建一个新的零初始化十进制128 。

    声明

    Objective-C

    - (nonnull instancetype)init;

    迅速

    init()
  • 将给定值转换为 RLMDecimal 128 。

    以下类型可以转换为 RLMDecimal 128 :

    • NSNumber
    • NSString
    • NSDecimalNumber

    传递不在此列表中的类型的值是致命错误。 传递无法解析为有效 Decimal128 的字符串是致命错误。

    声明

    Objective-C

    - (nonnull instancetype)initWithValue:(nonnull id)value;

    迅速

    init(value: Any)
  • 将给定数字转换为 RLMDecimal 128 。

    声明

    Objective-C

    - (nonnull instancetype)initWithNumber:(nonnull NSNumber *)number;

    迅速

    init(number: NSNumber)
  • 将给定string解析为 RLMDecimal 128 。

    如果无法将字符串解析为十进制数,则返回一个十进制数,其中isNaNYES

    声明

    Objective-C

    - (nonnull instancetype)initWithString:(nonnull NSString *)string;

    迅速

    init(string: String)
  • 将给定数字转换为 RLMDecimal 128 。

    声明

    Objective-C

    + (nonnull instancetype)decimalWithNumber:(nonnull NSNumber *)number;
  • RLMDecimal 128的最小值。

    声明

    Objective-C

    @property (class, copy, readonly) NS_REFINED_FOR_SWIFT RLMDecimal128 *minimumDecimalNumber;
  • RLMDecimal 128的最大值。

    声明

    Objective-C

    @property (class, copy, readonly) NS_REFINED_FOR_SWIFT RLMDecimal128 *maximumDecimalNumber;
  • 将该值转换为双精度值。这是有损转换。

    声明

    Objective-C

    @property (nonatomic, readonly) double doubleValue;

    迅速

    var doubleValue: Double { get }
  • 将此值转换为 NSDecimal。这可能是有损转换。

    声明

    Objective-C

    @property (nonatomic, readonly) NSDecimal decimalValue;

    迅速

    var decimalValue: Decimal { get }
  • 将此值转换为string 。

    声明

    Objective-C

    @property (nonatomic, readonly) NSString *_Nonnull stringValue;

    迅速

    var stringValue: String { get }
  • 如果此 Decimal 128表示 NaN 值,则获取此值。

    声明

    Objective-C

    @property (nonatomic, readonly) BOOL isNaN;

    迅速

    var isNaN: Bool { get }
  • 此 RLMDecimal 128的幅度。

    声明

    Objective-C

    @property (nonatomic, readonly) NS_REFINED_FOR_SWIFT RLMDecimal128 *magnitude;
  • 将此 RLMDecimal 128值替换为其加法逆值。

    声明

    Objective-C

    - (void)negate;

    迅速

    func negate()
  • 将右侧与当前值相加并返回结果。

    声明

    Objective-C

    - (nonnull RLMDecimal128 *)decimalNumberByAdding:
        (nonnull RLMDecimal128 *)decimalNumber;

    迅速

    func decimalNumber(byAdding decimalNumber: RLMDecimal128) -> RLMDecimal128
  • 将右侧除以当前值并返回结果。

    声明

    Objective-C

    - (nonnull RLMDecimal128 *)decimalNumberByDividingBy:
        (nonnull RLMDecimal128 *)decimalNumber;

    迅速

    func decimalNumberByDividing(by decimalNumber: RLMDecimal128) -> RLMDecimal128
  • 将右侧减去当前值并返回结果。

    声明

    Objective-C

    - (nonnull RLMDecimal128 *)decimalNumberBySubtracting:
        (nonnull RLMDecimal128 *)decimalNumber;

    迅速

    func decimalNumber(bySubtracting decimalNumber: RLMDecimal128) -> RLMDecimal128
  • 将右侧乘以当前值并返回结果。

    声明

    Objective-C

    - (nonnull RLMDecimal128 *)decimalNumberByMultiplyingBy:
        (nonnull RLMDecimal128 *)decimalNumber;

    迅速

    func decimalNumberByMultiplying(by decimalNumber: RLMDecimal128) -> RLMDecimal128
  • 比较操作符,用于检查右侧是否大于当前值。

    声明

    Objective-C

    - (BOOL)isGreaterThan:(nullable RLMDecimal128 *)decimalNumber;

    迅速

    func isGreaterThan(_ decimalNumber: RLMDecimal128?) -> Bool
  • 比较运算符,用于检查右侧是否大于或等于当前值。

    声明

    Objective-C

    - (BOOL)isGreaterThanOrEqualTo:(nullable RLMDecimal128 *)decimalNumber;

    迅速

    func isGreaterThanOrEqual(to decimalNumber: RLMDecimal128?) -> Bool
  • 比较操作符,用于检查右侧是否小于当前值。

    声明

    Objective-C

    - (BOOL)isLessThan:(nullable RLMDecimal128 *)decimalNumber;

    迅速

    func isLessThan(_ decimalNumber: RLMDecimal128?) -> Bool
  • 比较运算符,用于检查右侧是否小于或等于当前值。

    声明

    Objective-C

    - (BOOL)isLessThanOrEqualTo:(nullable RLMDecimal128 *)decimalNumber;

    迅速

    func isLessThanOrEqual(to decimalNumber: RLMDecimal128?) -> Bool