如何在java中定义一个方法,将新项输入到现有哈希表中?
当我想向预定义的哈希表中添加一个项目时,它通常很简单。但是每当我想定义一个像addNewCustomer这样的方法并尝试使用customerHashtable.put。。。;函数内部的方法,它不工作。请帮助我定义一个与现有哈希表一起使用的方法,并让我在本例中向其中添加新对象 代码如下:如何在java中定义一个方法,将新项输入到现有哈希表中?,java,methods,hash,hashtable,Java,Methods,Hash,Hashtable,当我想向预定义的哈希表中添加一个项目时,它通常很简单。但是每当我想定义一个像addNewCustomer这样的方法并尝试使用customerHashtable.put。。。;函数内部的方法,它不工作。请帮助我定义一个与现有哈希表一起使用的方法,并让我在本例中向其中添加新对象 代码如下: public static void main(String[] args) { Hashtable<Integer, Customer> customerHashta
public static void main(String[] args) {
Hashtable<Integer, Customer> customerHashtable = new Hashtable<Integer, Customer>();
customerHashtable.put (1, new Customer("david", "+13035003433", new Address("AR", "77555")));
Customer customer = new Customer("mark", "13035003433", new Address("AR", "77200"));
public void addNewCustomers(int key, Customer customer) {
customerHashtable.put(key, customer);
System.out.println(customerHashtable.get(key).toString());
}
}
}
您必须将addNewCutomers方法放在主方法之外,并为哈希表创建一个类字段。假设您对静态上下文没有问题,它可能如下所示:
public class HashtableDemo {
static Hashtable<Integer, Customer> customerHashtable;
public static void main(String[] args) {
customerHashtable = new Hashtable<Integer, Customer>();
customerHashtable.put (1, new Customer("david", "+13035003433", new Address("AR", "77555")));
Customer customer = new Customer("mark", "13035003433", new Address("AR", "77200"));
addNewCustomers(2, customer);
}
public static void addNewCustomers(int key, Customer customer) {
customerHashtable.put(key, customer);
System.out.println(customerHashtable.get(key).toString());
}
}
您必须将customerHashtable传递给函数,或者将其设置为类字段。您说它不工作是什么意思?你能说得更具体些吗?@ElliottFrisch我是编程新手。你能再解释一下吗?我还复制了我想在上面完成的代码。谢谢你修复它。成功了。不过我有一个问题。既然我们使用了静态方法,这是否意味着我们也可以从其他类调用该方法@Tobiasgeiselman是正确的。因为它是一个公共方法,所以您也可以从任何其他类调用它。