在角色 Rational 中§

有关 方法 Int 的主要文档请参阅 上下文

method Int(Rational:D: --> Int:D)

如果表示的数字有非整数部分,则通过截断非整数部分将调用者强制转换为 Int。如果 分母 为零,则将 失败 并显示 X::Numeric::DivideByZero

在 Map 中§

有关 方法 Int 的主要文档请参阅 上下文

method Int(Map:D: --> Int:D)

返回存储在 Map 中的键值对数(与 .elems 相同)。

my $m = Map.new('a' => 2'b' => 17);
say $m.Int;                                       # OUTPUT: «2␤»

在 Match 中§

有关 方法 Int 的主要文档请参阅 上下文

method Int(Match:D: --> Int:D)

尝试将匹配文本的字符串化结果转换为 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 context 
say ('one-two' ~~ /234/).Int;     # OUTPUT: «0␤» # because Nil.Int returns 0

在 List 中§

有关 方法 Int 的主要文档请参阅 上下文

method Int(List:D: --> Int:D)

返回列表中的元素数(与 .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:D:)

返回转换前后的字符串之间的距离。

在角色 Enumeration 中§

有关 方法 Int 的主要文档请参阅 上下文

multi method Int(::?CLASS:D:)

获取枚举的值,并在强制转换为 Int 后返回该值

enum Numbers ( 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:D: --> Int:D)

将调用者转换为 Int。可以使用 daycount 方法获取相同的值。

自 Rakudo 编译器的 2023.02 版本开始提供。

在 IO::Path 中§

请参阅 上下文中的主要文档 以了解方法 Int

method Int(IO::Path:D: --> Int:D)

.basename 强制转换为 Int。如果基本名称不是数字,则使用 X::Str::Numeric 失败

在枚举 Bool 中§

请参阅 上下文中的主要文档 以了解例程 Int

multi method Int(Bool:D --> Int:D)

返回 enum 对的值部分。

say False.Int;                                # OUTPUT: «0␤» 
say True.Int;                                 # OUTPUT: «1␤»

在角色 Real 中§

请参阅 上下文中的主要文档 以了解方法 Int

method Int(Real:D:)

在调用者上调用 Bridge 方法,然后在其返回值上调用 Int 方法

在 Str 中§

请参阅 上下文中的主要文档 以了解方法 Int

method Int(Str:D: --> Int:D)

使用与 Str.Numeric 相同的规则,将字符串强制转换为 Int

在 Num 中§

请参阅 上下文中的主要文档 以了解方法 Int

method Int(Num:D:)

将数字转换为 Int。如果调用者 NaNInf/-Inf,则使用 X::Numeric::CannotConvert 失败。不执行 舍入