我的客户类
中有getter和setter的实例private Collection<CustomersDetails> customerDetails = new ArrayList<CustomersDetails>();
public Collection<CustomersDetails> getCustomerDetails() {
return customerDetails;
}
public void setCustomerDetails(Collection<CustomersDetails> customerDetails) {
this.customerDetails = customerDetails;
}
但当我试图通过
CustomersDetails customersDetails = new CustomersDetails();
customersDetails.set....
customersDetails.set....
Customer customer = new Customer();
customer.setCustomerDetails(customersDetails);
显示错误
The method setCustomerDetails(Collection<CustomersDetails>) in the type Customer is not applicable for the arguments (CustomersDetails)
为什么是这样,当我的集合是CustomersDetails类型??
您的Customer
类有一个方法
public void setCustomerDetails(Collection<CustomersDetails> customerDetails) {
this.customerDetails = customerDetails;
}
您正在尝试使用类型为CustomersDetails
的参数调用它。CustomersDetails
不是Collection<CustomersDetails>
。在List
或其他Collection
中包装元素。
customer.setCustomerDetails(Arrays.asList(customersDetails));