Hey!
Zuerst der Aufbau:
Nun hab ich auch noch eine 2. HashMap:
Frage:
Wie kann ich jetzt eine neue Map "newMap" aus der HashMap "allMap" erstellen (nicht blos Referenzen, ich will quasi das "allMap" unverändert bleibt) und in der neuen Map "newMap" dann "age" und "name" mit den Values der "userMap" überschreiben, wobei die anderen Werte "reg" und "joined" unverändert bleiben?
Bisher hab ich es in etwa so:
In etwa so, wobei getUserSet(String username) für den "username" eine spezifische UserSet ausgibt, falls vorhanden.
Entweder ich hab irgendwo den Wurm drin oder ich hab einen total falschen Weg eingeschlagen. Ausserdem muss das
doch auch einfacher gehen?
Regards
Zuerst der Aufbau:
Code:
HashMap<String, AllSet> allMap = new HashMap<String, AllSet>();
die Klasse "AllSet" besteht lediglich aus settern und gettern für 4 Variablen:
private String name;
private Integer age;
private Boolean reg;
private Long joined;
Nun hab ich auch noch eine 2. HashMap:
Code:
HashMap<String, UserSet> userMap = new HashMap<String, UserSet>();
die Klasse "UserSet" besteht hier auch wieder nur aus settern und gettern für die 2 Variablen:
private String name;
private Integer age;
Frage:
Wie kann ich jetzt eine neue Map "newMap" aus der HashMap "allMap" erstellen (nicht blos Referenzen, ich will quasi das "allMap" unverändert bleibt) und in der neuen Map "newMap" dann "age" und "name" mit den Values der "userMap" überschreiben, wobei die anderen Werte "reg" und "joined" unverändert bleiben?
Bisher hab ich es in etwa so:
Code:
private HashMap<String, AllSet> getNewMap(String username) {
HashMap<String, AllSet> tmpMap = new HashMap<String, AllSet>();
AllSet newSet = new AllSet();
if(hasUserSpecificSet(username)) {
UserSet specific = getUserSet(username);
newSet.setName(specific.getName());
newSet.setAge(specific.getAge());
} else {
//use default AllSet values
}
tmpMap.put("new", newSet);
return tmpMap;
}
Entweder ich hab irgendwo den Wurm drin oder ich hab einen total falschen Weg eingeschlagen. Ausserdem muss das
doch auch einfacher gehen?
Regards