在角色 Rational 中§
有关 方法 Int 的主要文档请参阅 上下文
method Int(Rational: --> Int)
如果表示的数字有非整数部分,则通过截断非整数部分将调用者强制转换为 Int
。如果 分母 为零,则将 失败 并显示 X::Numeric::DivideByZero
。
在 Map 中§
有关 方法 Int 的主要文档请参阅 上下文
method Int(Map: --> Int)
返回存储在 Map
中的键值对数(与 .elems
相同)。
my = Map.new('a' => 2, 'b' => 17);say .Int; # OUTPUT: «2»
在 Match 中§
有关 方法 Int 的主要文档请参阅 上下文
method Int(Match: --> Int)
尝试将匹配文本的字符串化结果转换为 Int。
say ('12345' ~~ /234/).Int; # OUTPUT: «234»say ('12345' ~~ /234/).Int.^name; # OUTPUT: «Int»# the next line produces a warning about using Nil (result of a no match) in numeric contextsay ('one-two' ~~ /234/).Int; # OUTPUT: «0» # because Nil.Int returns 0
在 List 中§
有关 方法 Int 的主要文档请参阅 上下文
method Int(List: --> Int)
返回列表中的元素数(与 .elems
相同)。
say (1,2,3,4,5).Int; # OUTPUT: «5»
在 Cool 中§
有关 方法 Int 的主要文档请参阅 上下文
multi method Int()
将调用者强制转换为 Numeric
并调用其 .Int
方法。如果无法强制转换为 Numeric
,则 失败。
say 1+0i.Int; # OUTPUT: «1»say <2e1>.Int; # OUTPUT: «20»say 1.3.Int; # OUTPUT: «1»say (-4/3).Int; # OUTPUT: «-1»say "foo".Int.^name; # OUTPUT: «Failure»
在 StrDistance 中§
有关 方法 Int 的主要文档请参阅 上下文
multi method Int(StrDistance:)
返回转换前后的字符串之间的距离。
在角色 Enumeration 中§
有关 方法 Int 的主要文档请参阅 上下文
multi method Int(::?CLASS:)
获取枚举的值,并在强制转换为 Int
后返回该值
( cool => '42', almost-pi => '3.14', sqrt-n-one => 'i' );say cool.Int; # OUTPUT: «42»say almost-pi.Int; # OUTPUT: «3»try say sqrt-n-one.Int;say $!.message if $!; # OUTPUT: «Cannot convert 0+1i to Int: imaginary part not zero»
请注意,如果无法将该值强制转换为 Int
,则会引发异常。
在 IntStr 中§
请参阅 上下文中的主要文档 以了解方法 Int
method Int
返回 IntStr
的整数值。
在 Date 中§
请参阅 上下文中的主要文档 以了解方法 Int
multi method Int(Date: --> Int)
将调用者转换为 Int
。可以使用 daycount
方法获取相同的值。
自 Rakudo 编译器的 2023.02 版本开始提供。
在 IO::Path 中§
请参阅 上下文中的主要文档 以了解方法 Int
method Int(IO::Path: --> Int)
将 .basename
强制转换为 Int
。如果基本名称不是数字,则使用 X::Str::Numeric
失败。
在枚举 Bool 中§
请参阅 上下文中的主要文档 以了解例程 Int
multi method Int(Bool --> Int)
返回 enum
对的值部分。
say False.Int; # OUTPUT: «0»say True.Int; # OUTPUT: «1»
在角色 Real 中§
请参阅 上下文中的主要文档 以了解方法 Int
method Int(Real:)
在调用者上调用 Bridge
方法,然后在其返回值上调用 Int
方法。
在 Str 中§
请参阅 上下文中的主要文档 以了解方法 Int
method Int(Str: --> Int)
使用与 Str.Numeric
相同的规则,将字符串强制转换为 Int
。
在 Num 中§
请参阅 上下文中的主要文档 以了解方法 Int
method Int(Num:)
将数字转换为 Int
。如果调用者 是 NaN
或 Inf
/-Inf
,则使用 X::Numeric::CannotConvert
失败。不执行 舍入。