Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我需要将几个容器暴露给不同的组件,而我真正需要的只是:
interface Gettable { public String get(String key); }
是否有任何标准的 Java (SE) 接口尽可能接近这个接口,因为它可以不引入另一个接口,但将暴露的容器行为限制在所需的最低限度?
更新:选择的解决方案是自定义界面。我真的很想让它尽可能通用。
另一个自定义界面没有任何问题。
public interface Gettable<K, V> { public V get(K key); }
我认为最接近的标准接口是java.util.Map. 请注意,Map 的许多方法都是可选的(可能会引发 UnsupportedOperationException)。
java.util.Map
Guava 几乎就像一个 Java 标准,并且它们具有Function( javadoc ) 具有您正在寻找的签名
Function
T apply(F input)
返回将此函数应用于输入的结果。