A Google's Guave würde der Code wie folgt aussehen:
import com.google.common.collect.Table;
import com.google.common.collect.HashBasedTable;
Table<String, String, Integer> table = HashBasedTable.create();
for (int i = 0; i < 10; i++) {
table.put("abc", "def", i);
}
Der obige Code konstruiert eine HashMap innerhalb einer HashMap mit einem Konstruktor, der wie folgt aussieht:
Table<String, String, Integer> table = Tables.newCustomTable(
Maps.<String, Map<String, Integer>>newHashMap(),
new Supplier<Map<String, Integer>>() {
@Override
public Map<String, Integer> get() {
return Maps.newHashMap();
}
});
Falls Sie die zugrundeliegenden Strukturen außer Kraft setzen wollen, können Sie sie leicht ändern.