在我的初學者方法中,我確保兩個ArrayList具有相同的大小,否則我會拋出一個異常。我用來迭代兩個ArrayLists並將鍵值對放入地圖的解決方案可以正常工作,但我也發現它不是很優雅或最新。迭代兩個ArrayList並將鍵值映射得更加優雅
在這種方法中,我正在填充一張將隨後與Apache freemarker庫一起使用的映射。
Map<String, Object> map = new HashMap<String, Object>();
String placeHolder;
String value;
for (int i = 0; i < placeHolderList.size(); i++) {
placeHolder = placeHolderList.get(i);
value = valueList.get(i);
map.put(placeHolder, value);
}
什麼是在Java 8中做到這一點更優雅和高效的方法?
不要聲明'字符串佔位符;'和'字符串值;'了'for'循環之前。使用Stream API,沒有真正優雅的解決方案,只需在索引和'toMap'收集器上使用'IntStream'。請參閱Oracle教程https://docs.oracle.com/javase/tutorial/collections/streams/。 – Tunaki