首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何通过Scala中的索引向量来获取向量的子集?

如何通过Scala中的索引向量来获取向量的子集?
EN

Stack Overflow用户
提问于 2014-07-12 06:42:08
回答 1查看 263关注 0票数 0

如何创建一个新的向量,其元素是idx__'s元素的a2z__?

代码语言:javascript
复制
val a2z = ('a' to 'z').toVector    // actually an arbitrary Vector of objects
                                   // 'a' to 'z' only for illustration
val idx = Vector( 3, 9, 22, 24 )

想要

代码语言:javascript
复制
val res = Vector( 'd', 'j', 'w', 'y' )

我可以使用一个简单的for-循环,附加结果,但是我更喜欢用更具体的方式来做。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-07-12 07:42:47

只需对指数进行map

代码语言:javascript
复制
idx.map(i => a2z(i))

在传递给map的函数中,通过每个索引从Vector获取元素。

这应该适用于所有集合(不限于Vector)。

由于参数i只使用一次,因此可以简化为:

代码语言:javascript
复制
idx.map(a2z(_))

由于Vector.apply只有一个参数,所以可以这样写(正如@Paul在评论中指出的那样):

代码语言:javascript
复制
idx map a2z
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24710396

复制
相关文章

相似问题

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