Scala - 可变地图

时间:2017-09-28 15:47:17

标签: scala csv dictionary mutable

有没有办法通过使用变量在scala中创建可变映射? 我正在阅读带有source.fromFile(“abc.csv”)。getlines的csv文件。我希望这个文件的前2列是关键,并作为值休息。我想对第二个文件做同样的事情,所以我可以根据密钥比较这两个文件并获得差异。 例如:文件abc.csv如下: 公司EMPID,名称 1,10,美国广播公司 1,11,PQR 2,10,XYZ

我希望o / p为Map(110-> Abc,111-> PQR,210-> XYZ)

我试图通过以下方式实现它:

$(document).ready(function () {
   $("#MyTextbox").datepicker();
});  

但它给出了错误 -     :60:错误:类型不匹配;     发现:国际     必需:(Int,String)                   keymap + =(键,值)                              ^

有人可以建议我做错了什么或者有更好的方法吗? 谢谢!

1 个答案:

答案 0 :(得分:0)

如果keymap是可变的,为什么你把它当作var,把它当作val。试试这个。

scala> val tasks = mutable.Map[Int,String]()
tasks: scala.collection.mutable.Map[Int,String] = Map()
scala> tasks += (1,"Book a movie ticket")
<console>:14: error: type mismatch;
 found   : Int(1)
 required: (Int, String)
       tasks += (1,"Book a movie ticket")
scala> tasks += (1 -> "Book a movie ticket")
res13: tasks.type = Map(2 -> " movie ticket", 1 -> Book a movie ticket)

所以,你必须改变这个

keymap += (key-> value)