scala 之 互换map里的key和value的位置

这个功能实现其实很简单,最主要的关键点使我们要知道Map里的每一个k->v对在我们遍历的时候都是一个元组就ok

了。


话不多说 粘代码:



再加一点说明吧,SortedMap是不可变的。

向map里添加数据。得是mutable的。两种方式是一样的。

mumap+=(("1","2"))
mumap+=("1"->"2")

这个我们使用SortedMap的时候有一个好处就是他可以给我们进行排序。并且是自动按照key来进行的。如果需要用vaule的时候就需要转置一下k->v的位置。


其实我们还可以有另外的方案就是 

val smap=scala.collection.SortedMap("3"->"33","2"->"22","1"->"11").map(term=>(term._2,term._1)).toList.sortBy(_._2).reverse
也可以转为Array.

val smap1=scala.collection.SortedMap("3"->"33","2"->"22","1"->"11").map(term=>(term._2,term._1)).toArray.sortBy(_._2)

不管是按升序列还是将序列都没有问题。只需要灵活的使用reverse就行了。


方法有很多,根据自己的需要来吧。


猜你喜欢

转载自blog.csdn.net/kwame211/article/details/80681099