我正在尝试设计一个接口(interface),它有一个方法来检查提供的值是否存在于实现该接口(interface)的类中,该类也保存数据结构。
在这里,我想为实现者提供灵 active ,以涵盖任何类型的集合。
下面是代码:
public interface AllowedValues<T>{
//T represents the type of values the implementing class will hold.
public boolean exits(T t)
}
现在我希望实现类保存该集合。将循环检查传递给exists()函数的参数是否存在于集合中
public class AllowedValue implements AllowedValues<String>{
List<String> listOfAllowedvalues; // I want to make this collection to be generic.
public boolean exist(String s){
return listOfAllowedValues.contains(s);
}
}
如何在界面中添加灵 active ,甚至使集合的选择变得通用?
最佳答案
这是您想要做的吗:
public class AllowedValue<T> implements AllowedValues<T>
{
private Collection<T> allowedvalues;
public AllowedValue(Collection<T> allowedvalues)
{
this.allowedvalues = allowedvalues;
}
@Override
public boolean exist(T value)
{
return listOfAllowedValues.contains(value);
}
}
然后您可以创建一个 AllowedValue
,如下所示:
Collection<String> allowedStrings = Arrays.asList("Hello", "World");
AllowedValues<String> allowedValues = new AllowedValue<>(allowedStrings);
assert(allowedValues.exist("Hello"));
assert(!allowedValues.exist("Universe"));
关于java - 如何在 Java 中设计一个通用类来检查提供给它的允许值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22194523/