我得到了这个类(class),但我不明白删除功能是如何工作的。为什么在 remove()
之前需要是类名 (Customer
),它的含义是什么 Customer customer = (Customer)customers.firstElement();
你能帮我吗?
private java.util.Vector customers = new java.util.Vector();
Server server;
void insert(AbstractEvent customer){
customers.addElement(customer);
}
/**
* @return the first customer in the queue
*/
Customer remove() {
Customer customer = (Customer) customers.firstElement();
customers.removeElementAt(0);
return customer;
}
int size() {
return customers.size();
}
最佳答案
Customer remove()
remove()
方法返回一个 Customer
类型的对象。这就是 remove()
之前的类名的含义。
Customer customer = (Customer) customers.firstElement();
customers.firstElement()
返回 customers
变量引用的 Vector
对象的第一个元素。由于 customers
的类型是原始类型(即它不指定 Vector
中存储的元素类型),因此 firstElement()
返回 Object
类型的对象,该对象必须转换为 Customer
类型才能分配给 Customer
变量。
更换
private java.util.Vector customers = new java.util.Vector();
与
private java.util.Vector<Customer> customers = new java.util.Vector<>();
将允许简单地分配 Vector 的第一个元素而不进行强制转换:
Customer customer = customers.firstElement();
关于java - 无法理解remove()函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41987900/