首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何绕过Perl6签名中的一个模糊参数?

如何绕过Perl6签名中的一个模糊参数?
EN

Stack Overflow用户
提问于 2017-04-16 21:16:02
回答 1查看 230关注 0票数 2

我有一个简短的示例,其中我想取出Array的两个元素,并将其替换为一个元素,即一个数组:

代码语言:javascript
复制
my @digits  = <1 2 3>.map: { [ $_, $_ ] };
say @digits;  # [[1 1] [2 2] [3 3]]

@digits.splice: 0, 2, [4,4];
say @digits; # [4 4 [3 3]]

这不起作用,因为splice的替代品实际上是slurpy *@replacement,所以它将其全部拉平。

我可以尝试将其逐项列出,以便将其视为单个事物,但它仍然是扁平化的:

代码语言:javascript
复制
@digits.splice: 0, 2, $[4,4];
say @digits; 

我可以将该项目放入另一个数组中,并获得我想要的内容,但这似乎有太多的工作(特别是因为我想要确定它是否被展平):

代码语言:javascript
复制
@digits.splice: 0, 2, [$[4,4]];
say @digits; # [[4 4] [3 3]]

有没有更好的方法来解决这个问题?

EN

回答 1

Stack Overflow用户

发布于 2017-04-16 23:22:08

您可以使用([4,4],) (作为[$[4,4]]的替代

代码语言:javascript
复制
@digits.splice: 0, 2, ([4,4],); #or [[4,4],];

或更多替代产品

代码语言:javascript
复制
@digits.splice: 0, 2, [4,4], Empty; #or ,slip();
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43437664

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档