在 RatStr 中§
有关方法 Numeric的详细信息,请参阅上下文中的主要文档
multi method Numeric(RatStr: --> Rat)multi method Numeric(RatStr: --> Rat)
:D
变体返回调用者的数字部分。:U
变体发出警告,指出在数字上下文中使用未初始化的值,然后返回值 0.0
。
在 DateTime 中§
有关方法 Numeric的详细信息,请参阅上下文中的主要文档
multi method Numeric(DateTime: --> Instant)
从 Rakudo 编译器的 2021.09 版本开始可用。
将调用者转换为 Instant
。可以使用 Instant
方法获取相同的值。这允许在算术运算中直接使用 DateTime
对象。
在 Map 中§
有关方法 Numeric的详细信息,请参阅上下文中的主要文档
method Numeric(Map: --> Int)
返回存储在 Map
中的键值对数量(与 .elems
相同)。
my = Map.new('a' => 2, 'b' => 17);say .Numeric; # OUTPUT: «2»
在 List 中§
有关方法 Numeric的详细信息,请参阅上下文中的主要文档
method Numeric(List: --> Int)
返回列表中的元素数量(与 .elems
相同)。
say (1,2,3,4,5).Numeric; # OUTPUT: «5»
在 StrDistance 中§
有关方法 Numeric的详细信息,请参阅上下文中的主要文档
将距离作为数字返回。
在 ComplexStr 中§
有关方法 Numeric的详细信息,请参阅上下文中的主要文档
multi method Numeric(ComplexStr: --> Complex)multi method Numeric(ComplexStr: --> Complex)
:D
变体返回调用者的数字部分。:U
变体发出警告,指出在数字上下文中使用未初始化的值,然后返回值 <0+0i>
。
在 role Sequence 中§
有关方法 Numeric的详细信息,请参阅上下文中的主要文档
method Numeric(::?CLASS:)
返回缓存的序列中的元素数量。
在 role Numeric 中§
有关方法 Numeric的详细信息,请参阅上下文中的主要文档
multi method Numeric(Numeric: --> Numeric)multi method Numeric(Numeric: --> Numeric)
:D
变体只返回调用者。:U
变体发出警告,指出在数字上下文中使用未初始化的值,然后返回 self.new
。
在角色枚举中§
有关方法 Numeric,请参阅上下文中的主要文档
multi method Numeric(::?CLASS:)
获取枚举的值,并在强制转换为Numeric
后返回该值
( cool => '42', almost-pi => '3.14', sqrt-n-one => 'i' );say cool.Numeric; # OUTPUT: «42»say almost-pi.Numeric; # OUTPUT: «3.14»say sqrt-n-one.Numeric; # OUTPUT: «0+1i»
请注意,如果无法将值强制转换为Numeric
,则会引发异常。
在 Thread 中§
有关方法 Numeric,请参阅上下文中的主要文档
method Numeric(Thread: --> Int)
返回一个数字,唯一的线程标识符,即与id相同。
在 X::AdHoc 中§
有关方法 Numeric,请参阅上下文中的主要文档
method Numeric()
将有效负载转换为Numeric
并返回
在枚举 Endian 中§
有关例程 Numeric,请参阅上下文中的主要文档
multi method Numeric(Endian --> Int)
返回enum
对的值部分。
say NativeEndian.Numeric; # OUTPUT: «0»say LittleEndian.Numeric; # OUTPUT: «1»say BigEndian.Numeric; # OUTPUT: «2»
请注意,实际数字值可能会发生变化。因此,请使用命名值。
在 NumStr 中§
有关方法 Numeric,请参阅上下文中的主要文档
multi method Numeric(NumStr: --> Num)multi method Numeric(NumStr: --> Num)
:D
变体返回调用者的数字部分。:U
变体发出警告,提示在数字上下文中使用未初始化的值,然后返回值0e0
。
在 IntStr 中§
有关方法 Numeric,请参阅上下文中的主要文档
multi method Numeric(IntStr: --> Int)multi method Numeric(IntStr: --> Int)
:D
变体返回调用者的数字部分。:U
变体发出警告,提示在数字上下文中使用未初始化的值,然后返回值0
。
在 Date 中§
有关方法 Numeric,请参阅上下文中的主要文档
multi method Numeric(Date: --> Int)
将调用者转换为Int
。可以使用daycount
方法获取相同的值。这允许在算术运算中直接使用Date
对象。
在 Rakudo 编译器的 2023.02 版本中可用。
在 Capture 中§
有关方法 Numeric,请参阅上下文中的主要文档
method Numeric(Capture: --> Int)
返回Capture
中的位置元素数。
say \(1,2,3, apples => 2).Numeric; # OUTPUT: «3»
在 IO::Path 中§
有关方法 Numeric,请参阅上下文中的主要文档
method Numeric(IO::Path: --> Numeric)
将.basename
强制转换为Numeric
。如果基本名称不是数字,则使用X::Str::Numeric
失败。
在枚举 Bool 中§
参阅 上下文中 的主要文档,了解 例程 Numeric
multi method Numeric(Bool --> Int)
返回enum
对的值部分。
say False.Numeric; # OUTPUT: «0»say True.Numeric; # OUTPUT: «1»
In Str§
参阅 上下文中 的主要文档,了解 方法 Numeric
method Numeric(Str: --> Numeric)
使用与 val 例程等效的语义将字符串强制转换为 Numeric
。如果无法强制转换为数字,则使用 X::Str::Numeric
失败。
仅允许属性为 Nd
的 Unicode 字符以及前导和尾随空格,特殊情况是空字符串强制转换为 0
。禁止使用合成代码点(例如 "7\x[308]"
)。
虽然 Nl
和 No
字符可以在语言中用作数字文字,但根据设计,它们通过 Str.Numeric
进行转换会失败;合成数字(由数字和变音符号组成)也会发生这种情况。如果您需要将此类字符强制转换为 Numeric
,请参阅 unival。允许使用 +、- 和 Unicode 减号 −。
" −33".Numeric; # OUTPUT: «-33»
In Nil§
参阅 上下文中 的主要文档,了解 方法 Numeric
method Numeric()
警告用户他们尝试将 Nil
数字化。