[英]Generalizing parameters in a java method
所以我有两种方法:
private void updateJobType(, Boolean addTarget, JobType target) {
if (addTarget == Boolean.TRUE) {
jobTypes.add(target);
} else {
jobTypes.remove(target);
}
}
private void updateSearchStatus( Boolean addTarget, JobStatus target) {
if (addTarget == Boolean.TRUE) {
searchStatus.add(target);
} else {
searchStatus.remove(target);
}
我想将其概括为:
private void updateList(Boolean addItem, Object item, List<Object> list) {
if (addItem == Boolean.TRUE) {
list.add(item);
} else {
list.remove(item);
}
}
但是当我打电话时:
updateList(Boolean.True, JobType.FULL_TIME, jobTypes);
我收到一个错误:
JobSearch中的updateList()无法应用于:
预期参数:“java.util.list”
实际参数:jobTypes(java ... domain.job.JobType>)
在Java中,这在概念上是不可能的吗? 我错过了什么? 我读过看起来很相似的问答,但没有人完全回答这个问题。 提前致谢。 干杯!
这个应该做的伎俩:
private <T> void updateList(Boolean addItem, T item, java.util.List<T> list) { //...
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.