我想将一个对象添加到地图中,但它会出错。也许我必须使用列表,但有getname()方法所以我使用map。我必须检查它是否有重复的值,如果找到则抛出异常
public class HandleApplications {
Map<String,Name> names = new HashMap<>();
public void addNames(String... names) throws Exception{
Name c = new Name(names);
if(names.containsValue(names)){
throw new ApplicationException();
}
names.put(names,c) //this line gives error
}
public Name getName(String name) {
return names.get(name);
}
}
答案 0 :(得分:1)
我认为你需要的是 -
public void addNames(String... names) throws Exception {
for (String s : names) {
Name c = new Name(s);
this.names.put(s, c);
}
}
考虑更改变量名称。由于变量名相同,我使用this.names来引用地图。