juan_gandhi: (VP)
Juan-Carlos Gandhi ([personal profile] juan_gandhi) wrote2014-03-24 05:18 pm
Entry tags:

scala wtf

scala> val m = Map("a"->1, "b"->2, "c"->2)
m: scala.collection.immutable.Map[String,Int] = Map(a -> 1, b -> 2, c -> 2)

scala> val m1=m map {case (x,y) => (y,x)}
m1: scala.collection.immutable.Map[Int,String] = Map(1 -> a, 2 -> c)

[identity profile] smalgin.livejournal.com 2014-03-25 01:09 am (UTC)(link)
Последняя пара с ключом 2 переписала предыдущую.
А что ожидалось от map? Что он будет умным задним числом и создаст Multimap?

А что будет, если
scala> val m = MultiMap("a"->1, "b"->2, "c"->2)
scala> val m1=m map {case (x,y) => (y,x)}

?
(нету сейчас Scala под рукой)


[identity profile] eliah lakhin (from livejournal.com) 2014-03-25 05:30 pm (UTC)(link)
А в чем подвох? Вроде же все правильно, не?

[identity profile] http://users.livejournal.com/_windwalker_/ 2014-03-25 10:10 pm (UTC)(link)
Кто последний встал, того и тапочки. Правда с хера тогда такая мапа объявляется immutable ?
Но вообще забавно, что в API записано для этого момента по поводу мап...