我有一个List(String,String)
类型的列表,我想将其转换为地图。当我使用toMap
方法时,我发现它不保留List中数据的顺序。不过,我的目标是通过保持数据的顺序与List相同的顺序将列表转换为Map。我了解到ListMap
保留了插入顺序(但它是不可变的),所以我可以使用LinkedHashMap和map函数将数据顺序插入到LinkedHashMap
中,但这意味着我需要遍历所有非常痛苦的元素。任何人都可以请建议我一个更好的方法? 感谢如何将List(String,String)转换为ListMap [String,String]?
回答
这应做到:
val listMap = ListMap(list : _*)
谢谢@ C4stor的评论,它的工作。我对scala很陌生,对注释的一个小解释将有助于深入理解。 – Explorer
[ListMap#apply](http://www.scala-lang.org/api/2.11.8/index.html#[email protected] [A,B](elems:(A, B)*):CC [A,B])接受元组可变参数。据我所知,通过调用':_ *',列表元素以可变参数化方式应用。也许这[gist](https://gist.github.com/kevinmeredith/b4b3e35bf7bfadce253a8d74aef1c7ef)会有所帮助。另请参阅http://stackoverflow.com/questions/1008783/using-varargs-from-scala获取更多信息。 –
@KevinMeredith说得对。我认为一个更相关的问题要理解:_ *是http://stackoverflow.com/questions/6051302/what-does-colon-underscore-star-do-in-scala哪些有希望,所有您需要的信息:) – C4stor
- 1. 如何将List [List [Map [String,String]]]转换为List [Map [String,String]]
- 2. 将Scala中的List [String,String]变为List [String,List [String]]?
- 3. 如何将List(List [String])转换为Map [String,Int]?
- 4. 如何将List [String]转换为List [ServerAddress]?
- 5. 如何将System :: String ^转换为std :: string?
- 6. 如何将RDD [List [String]]转换为RDD [String]
- 7. 如何将List <NameValuePair>转换为hashMap <String,String>?
- 8. 如何将List转换为java.util.ArrayList [String]
- 9. 如何将String []转换为IDictionary <String,String>?
- 10. 如何将MultiMap <String,String>转换为MultiMap <String,Integer>?
- 11. 我应该如何将RDD [String]转换为RDD [(String,String)]?
- 12. 'String'不能转换为'String?'
- 13. 如何将List <string>转换成Dictionary <string,string>使用linq?
- 14. 将Map [String,Double]转换为java.util.Map [String,java.lang.Double]
- 15. 将java.util.Map [String,Object]转换为scala.collection.immutable.Map [String,Any]
- 16. C++/CX:将std :: string转换为Platform :: String^
- 17. 将std :: __ cxx11 :: string转换为std :: string
- 18. vb.net无法将Dictionary(Of String,List(Of String))转换为Object
- 19. 从String []转换为String并再次转换为String []
- 20. C#将列表<string>转换为字典<string,string>
- 21. 将未来的[Seq [(String,String)]]转换为Future [Seq [(String)]]
- 22. 将List <ApplicationInfo>转换为String []
- 23. c#string [] to jquery string list?
- 24. Java:将列表<String>转换为方法(String,String,String)的输入
- 25. 转换为String []
- 26. 如何将List <Single <String>>转换为列表<String>?
- 27. 如何将Json字符串转换为List <HashMap <String,String >>?
- 28. '(String) - > String'不可转换为'SQLHandler'
- 29. 转换的ArrayList <String>为String [] []
- 30. Scala - 如何将3个元组列表[(String,String,Int)]分组到List [List [(String,String,Int)]]
“我的目标是转换列表中通过保持相同列表的数据,以图”。地图不能像那样工作 –
“我了解到ListMap保留了插入顺序”您是如何学习的?文档中没有任何内容。 –
我从这篇文章中知道http://stackoverflow.com/questions/3835743/scala-map-implementation-keeping-entries-in-insertion-order – Explorer