java中哈希集的问题
我不确定如何为使用字符串哈希集的类文件创建getter和setter方法。我说的对吗?因为hashset没有索引,getter方法将返回整个集合,setter只需向集合中添加一个元素java中哈希集的问题,java,getter,Java,Getter,我不确定如何为使用字符串哈希集的类文件创建getter和setter方法。我说的对吗?因为hashset没有索引,getter方法将返回整个集合,setter只需向集合中添加一个元素 import java.util.HashSet; import java.util.Iterator; import java.util.Set; public class Names { // fields private final Set<String> names = n
import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;
public class Names {
// fields
private final Set<String> names = new HashSet<String>();
//methods
public void addNames(final String name) {
names.add(name);
System.out.printf("Added %s to names hashset%n", name);
}
// getter methods
public Set<String> getNames () {
return names;
}
}
是的,你说得对。对于
Set
而言,您创建addNames()
函数的方式是正确的,其行为与本例中的Setter类似。
盖特很好
为了证明这一点,您可以尝试使用eclipse显式地生成该对象的getter/setter。它还将只生成getter
设置值diff函数是必需的。您的问题有点不清楚,但是如果getter方法的目的是返回整个名称集以便打印它,那么您就差不多做到了
更改
System.out.println(getNames())
toSystem.out.println(n.getNames())代码>您想要实现什么?打印哈希集的内容?为什么还要创建Names
类?它解决了什么问题?您只需在main()
方法中创建一个名为HashSet
的方法,该方法将执行完全相同的操作。这取决于您的实现,您可以拥有一个类型为Set的字段,然后可以为该字段创建setter。类的用户可以使用setter方法传递新的HashSet()。如果你想添加元素,那么你可以像以前一样使用。我不完全理解你的问题,但我想这取决于你想要实现什么。getter和setter用于修改和检索字段值,因此严格地说,您将有一个setNames和getNames,但是您的类的用途是什么?正如另一个人所解释的,您可以直接使用hashset。另外,我被要求编写这个程序的方式是使用类和对象。这是因为我不只是用主要的方法来做这一切。
import java.util.HashSet;
import java.util.Iterator;
public class TestNames {
public static void main(String[] args) {
Names n = new Names();
n.addNames("Roger");
n.addNames("Gary");
n.addNames("Mark");
n.addNames("Sue");
n.addNames("Angela");
n.addNames("Jay");
n.addNames("Peter");
System.out.println(getNames());
}
}