【发布时间】:2016-08-19 11:14:05
【问题描述】:
这是一个关于 Java 语法的问题。我没有卡住。
对于列表,假设我有一个字符串列表。
List<String> mylist;
只要我不需要访问列表中的元素,我可以将此列表称为List(相对于List<String>)。
所以我可以有一个看起来像这样的方法:
public int listSize(List list) {
return list.size();
}
现在假设我有一个HashMap。
HashMap<String, String> myhash;
还有一个方法访问 key 但从不访问 value:
public boolean hashContainsKey(HashMap<String, String> hash, String key) {
return hash.containsKey(key);
}
有没有一种只指定 HashMap 的“关键”部分的好方法?HashMap<String> 之类的东西?
【问题讨论】:
-
看keySet方法
-
As long as I don't need to access the elements in my list, I can refer to this list as a List (versus List<String>)....为什么?这有什么改善? -
@Rogue 这不是很明显吗?因此,
List<Integer>、List<SecurityManager>和List<Custom>都将被接受,而无需重新定义几种方法或使用繁重的 Generic 语法。