小编use*_*260的帖子

使用Java 8流处理地图列表

如何将此代码简化为单个lambda表达式?我的想法是有一个地图列表,我想创建一个新的地图列表,使用密钥过滤器.在这个例子中,我想重新映射它,使它只保留键"x"和"z".

    Map<String, String> m0 = new LinkedHashMap<>();
    m0.put("x", "123");
    m0.put("y", "456");
    m0.put("z", "789");

    Map<String, String> m1 = new LinkedHashMap<>();
    m1.put("x", "000");
    m1.put("y", "111");
    m1.put("z", "222");

    List<Map> l = new ArrayList<>(Arrays.asList(m0, m1));
    List<Map> tx = new ArrayList<>();
    for(Map<String, String> m : l) {
        Map<String, String> filtered = m.entrySet()
                .stream()
                .filter(map -> map.getKey().equals("x") || map.getKey().equals("z"))
                .collect(Collectors.toMap(p -> p.getKey(), p -> p.getValue()));
        tx.add(filtered);
    }
    System.err.println("l: " + l);
    System.err.println("tx: " + tx);
Run Code Online (Sandbox Code Playgroud)

输出:

    l: [{x=123, y=456, z=789}, {x=000, y=111, z=222}]
    tx: [{x=123, z=789}, …
Run Code Online (Sandbox Code Playgroud)

java lambda java-stream

6
推荐指数
2
解决办法
1万
查看次数

IntelliJ在4K屏幕上的问题

我挥霍并买了一台高清4K屏幕.更具体地说,戴尔UltraSharp 4k UP3216Q 31.5",与运行Windows 10的新PC相结合.

当计算机偶尔重新启动时,它会进入一种模式,当我加载IntelliJ时,它会显示以下错误消息:

8:16 PM您可能需要手动配置HiDPI模式以防止UI缩放问题.请参阅故障排除指南.

有趣的是,当它在这种模式下运行时,我实际上喜欢IntelliJ的外观.我喜欢它,因为它在真正的尖锐4K模式下运行,同时,所有字体都足够大,易读,并且不需要磁共振显微镜或单片眼镜来制作字母.

但是,其他时候,当系统启动时,我没有得到那个错误,这意味着一切正常运行,但在这种情况下,所有字体都很小,以至于难以辨认.它看起来确实伤到了我的眼睛,我在那时留下的唯一选择是从3840x2160下降到1920x1080,或者进入设置,并开始增加字体大小,这很烦人.更不用说如果我进入1920x1080模式,那么我所看到的质量会降低,一切都开始看像素化......

有什么办法可以稳定这些新4K屏幕的情况,以便IntelliJ看起来正常吗?

jetbrains-ide intellij-idea

3
推荐指数
1
解决办法
1573
查看次数

标签 统计

intellij-idea ×1

java ×1

java-stream ×1

jetbrains-ide ×1

lambda ×1