我的例子是我希望我的用户打电话
findCustomers(...)
现在我的问题是关于这种方法的论点。我有一个
Customer.java
对象,我希望用户能够使用该库按客户名称和客户 ID 进行搜索。
现在我不想创建多个方法
findCustomerById(String id)
findCustomerByName(String name)
findAllCustomers()
相反,我想做的是一个通用的 findCustomer
/** if you pass only custoer.name and rest of fields are null will search by name,
if you pass a null custoer object will return all customers, if you pass both custoer id and his name will search by both fields). **/
findCustomer(Customer customer)
现在我有一个通用的 api 方法,但我不喜欢在对象中传递空值,我不喜欢空值。
有人对这样的 api 有明确的最佳实践吗?
谢谢