gpt4 book ai didi

list - Scala将Collection转换为Key-key的最佳方法? (第二变种)

转载 作者:行者123 更新时间:2023-12-04 04:52:39 30 4
gpt4 key购买 nike

(这是this Q&A的变体)

说我有这个:

List( "foo", "bar", "spam" )

我想创建一个Map,其键为String的长度,值为所有具有该长度的String的Collection。换句话说,给定about列表,我们将得到:
Map( 3 -> List(foo, bar), 4 -> List(spam) )

我为此编写的代码是:
list.foldLeft(Map[Long, List[String]]()) {
(m, s) => m(s.length) = s ::
( if ( m.contains(s.length) ) m(s.length)
else Nil )
}

此方法有效,但在Daniel Spiewak为原始问题(上面已引用)提供的优雅答案中增加了很多麻烦。

有什么想法可以改善我的变体的解决方案吗?

谢谢!
肖恩

最佳答案

使用Scala 2.8.0:

list.groupBy(_.length)

没有比这更简单的了!

关于list - Scala将Collection转换为Key-key的最佳方法? (第二变种),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1209687/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com