很像ImmutableList
如何可以擴展爲這樣的ImmutableMap:擴展額外的或新的值
ImmutableList<Long> originalList = ImmutableList.of(1, 2, 3);
ImmutableList<Long> extendedList = Iterables.concat(originalList, ImmutableList.of(4, 5));
如果我有一個現有的地圖,我怎麼能延長它(或替換值來創建一個新副本)?
ImmutableMap<String, Long> oldPrices = ImmutableMap.of("banana", 4, "apple", 7);
ImmutableMap<String, Long> newPrices = … // Increase apple prices, leave others.
// => { "banana": 4, "apple": 9 }
(讓我們不尋求有效的解決方案,因爲顯然that doesn't exist by design這個問題而尋求最慣用的解決方案。)
這裏的限制是不允許重複 - - 它不允許我增加蘋果的價格。 –
@AndresJaanTack看到我編輯的答案。遠非優雅,但它應該做的伎倆。 – Mureinik
請不要推薦「雙大括號初始化」。請參閱http://stackoverflow.com/a/9108655/95725和http://blog.jooq.org/2014/12/08/dont-be-clever-the-double-curly-braces-anti-pattern/ – NamshubWriter