7

我正在尝试获取LinkedHashMap基于元素索引的子图。我在这里重新发明轮子吗?听起来这应该已经在 API 中的某个地方:

public <K,V> LinkedHashMap<K,V> subMap(LinkedHashMap<K,V> map, int fromIndex, int toIndex) {
    LinkedHashMap<K,V> result = new LinkedHashMap<K,V>();

    int i=0;
    for(Map.Entry<K,V> entry : map.entrySet()) {
        if(i >= fromIndex && i < toIndex) {
            result.put(entry.getKey(), entry.getValue());
        }
        i++;
    }

    return result;
}

这是要走的路还是有一些其他更好/现有的解决方案(在 Java 6 API 中)。

4

1 回答 1

1

NavigableMap允许您取回子地图,但它要求您指定“从键”和“到键”,因此您不能仅在索引上执行此操作。

我不知道通过标准 API 执行此操作的任何其他方式。

于 2012-05-14T18:48:21.900 回答