有沒有什麼辦法通過使用變量在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-1> XYZ)
我試圖通過實現它:
var keymap = collection.mutable.Map[Int,String]()
val content = Source.fromFile("abc.csv").getLines;
val data = content.drop(1); //to remove header
for (line <-data){
val x = line.substring(0,1).toInt;
val y = line.substring(2,4).toInt;
var key = (x*100) + y;
var value = line.substring(9);
var keymap += (key,value);
}
但它給誤差 - :60:錯誤:類型不匹配; 發現:詮釋 要求:(智力,字符串) 鍵盤映射+ =(鍵,值) ^
有人可以請建議我在做什麼錯誤,或有更好的方法來做到這一點? 謝謝!
沒有必要可變地圖這樣做 – cchantep