我想要一个具有不同但相似类型的列表。 例如,我想将不同 validator 类的列表放在一个列表中。
例如:
ArrayList<T> validators = new ArrayList<T>();
validators.add(new StringValidator());
validators.add(new IntegerValidator());
这可以做到吗?
最佳答案
以下是如何执行此操作的完整示例:
首先,定义一个接口(interface):
public interface Validator {
void validate();
}
然后,创建一个实现:
public class IntegerValidator implements Validator {
public void validate() {
// Validate
}
}
字符串 validator 实现:
public class StringValidator implements Validator {
public void validate() {
// Validate
}
}
这是客户端代码:
public class Test {
public static void main(String[] args) {
List<Validator> v = new ArrayList<Validator>();
v.add(new StringValidator());
v.add(new IntegerValidator());
for (Validator validator : v) {
validator.validate();
}
}
}
关于java - T 具有不同类型的 ArrayList<T>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18825180/