栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

Java 8:使用换行符和缩进格式格式化lambda

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java 8:使用换行符和缩进格式格式化lambda

开箱即用的IntelliJ 13可能会为您工作。

如果我这样写:

// Mulit-Line StatementString[] ppl = new String[] { "Karen (F)", "Kevin (M)", "Lee (M)", "Joan (F)", "Des (M)", "Rick (M)" };List<String> strings = Arrays.stream(ppl)        .filter(     (x) ->     {         return x.contains("(M)");     }        ).collect(Collectors.toList());strings.stream().forEach(System.out::println);

然后应用自动格式化程序(无更改):

// Mulit-Line StatementString[] ppl = new String[]{"Karen (F)", "Kevin (M)", "Lee (M)", "Joan (F)", "Des (M)", "Rick (M)"};List<String> strings = Arrays.stream(ppl)        .filter(     (x) ->     {         return x.contains("(M)");     }        ).collect(Collectors.toList());strings.stream().forEach(System.out::println);

单行语句也是如此。我的经验是,IntelliJ在应用其自动格式化方面更加灵活。IntelliJ不太可能删除或添加换行符,如果将其放到那里,则假定您打算将其放到那里。IntelliJ会很高兴为您调整选项卡空间。


IntelliJ也可以配置为您执行某些操作。在“设置”->“代码样式”->“
java”下,在“包装和花括号”选项卡中,可以将“链方法调用”设置为“总是包装”。

自动格式化之前

// Mulit-Line StatementList<String> strings = Arrays.stream(ppl).filter((x) -> { return x.contains("(M)"); }).collect(Collectors.toList());// Single-Line StatementList<String> strings = Arrays.stream(ppl).map((x) -> x.toUpperCase()).filter((x) -> x.contains("(M)")).collect(Collectors.toList());

自动格式化后

// Mulit-Line StatementList<String> strings = Arrays.stream(ppl)        .filter((x) -> { return x.contains("(M)");        })        .collect(Collectors.toList());// Single-Line StatementList<String> strings = Arrays.stream(ppl)        .map((x) -> x.toUpperCase())        .filter((x) -> x.contains("(M)"))        .collect(Collectors.toList());


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/453542.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号