Java 如何使用IntStream将字符串和整数元素放入LinkedHashMap?

Java 如何使用IntStream将字符串和整数元素放入LinkedHashMap?,java,lambda,hashmap,linkedhashmap,Java,Lambda,Hashmap,Linkedhashmap,我不熟悉LinkedHashMap,我想用IntStream而不是filter.put(“1”,1)。。。有什么办法吗 private Map<String, Integer> filter = new LinkedHashMap<>(); @PostConstruct public void init() throws IdNotFoundException { filter.put("1", 1); filter.put("2

我不熟悉
LinkedHashMap
,我想用IntStream而不是filter.put(“1”,1)。。。有什么办法吗

private Map<String, Integer> filter = new LinkedHashMap<>();

@PostConstruct
    public void init() throws IdNotFoundException {
        filter.put("1", 1);
        filter.put("2", 2);
        filter.put("3", 3);
        filter.put("4", 4);
        filter.put("5", 5);
        filter.put("6", 6);
        filter.put("7", 7);
        filter.put("8", 8);
        filter.put("9", 9);
        filter.put("10", 10);
        filter.put("All", -1);
    }
private Map filter=new LinkedHashMap();
@施工后
public void init()引发IdNotFoundException{
过滤器。放置(“1”,1);
过滤器。放置(“2”,2);
过滤器。放置(“3”,3);
过滤器。放置(“4”,4);
过滤器。放置(“5”,5);
过滤器。放置(“6”,6);
过滤。放入(“7”,7);
过滤器。放置(“8”,8);
过滤器。放入(“9”,9);
过滤器。放置(“10”,10);
filter.put(“全部”、-1);
}

为此,我建议使用
IntStream

 Map<String, Integer> filter = new LinkedHashMap<>();
    IntStream.range(1, 11).forEach(integer -> filter.put(String.valueOf(integer), integer));
    filter.put("All", -1);
Map filter=newlinkedhashmap();
IntStream.range(1,11).forEach(integer->filter.put(String.valueOf(integer),integer));
filter.put(“全部”、-1);

你的确切意思是什么我必须把“1”,1“2”,2。。。我可以用lambda来代替11行过滤器吗?如果它总是“1”,为什么不使用一个简单的循环呢?for(int i=0;i使用
索引创建循环while或for
初始数据从何而来。您编写
的方式“1”、“1”、“2”、“2”听起来像是一个任意数组。但我真的不确定如何存储初始数据?还是由您决定?