当前位置: 首页 > news >正文

河南网站推广优化公司韩漫网站建设

河南网站推广优化公司,韩漫网站建设,手机网站永久免费制作,网站架构拓扑图lambda ::表达式这篇博客文章包含基本Lambda表达式和Stream API示例的列表#xff0c;我在2014年6月在Java用户组Politechnica Gedanensis #xff08;格但斯克技术大学#xff09;和Goyello的实时编码演示中使用了这些示例。 Lambda表达式 句法 最常见的示例#xff1a; … lambda ::表达式 这篇博客文章包含基本Lambda表达式和Stream API示例的列表我在2014年6月在Java用户组Politechnica Gedanensis 格但斯克技术大学和Goyello的实时编码演示中使用了这些示例。 Lambda表达式 句法 最常见的示例 Runnable runnable () - System.out.println(Hello!); Thread t new Thread(runnable); t.start(); t.join(); 可以这样写 Thread t new Thread(() - System.out.println(Hello!)); t.start(); t.join(); 那参数呢 ComparatorString stringComparator (s1, s2) - s1.compareTo(s2); 并扩展为完整表达 ComparatorString stringComparator (String s1, String s2) - {System.out.println(Comparing...);return s1.compareTo(s2); };功能界面 Lambda表达式使您可以更紧凑地表达单方法类的实例。 单方法类称为函数接口 可以使用FunctionalInterface进行注释 FunctionalInterface public interface MyFunctionalInterfaceT {boolean test(T t); } // Usage MyFunctionalInterfaceString l s - s.startsWith(A);方法参考 方法引用是紧凑的易于阅读的lambda表达式用于具有名称的方法。 让我们看一个简单的例子 public class Sample {public static void main(String[] args) {Runnable runnable Sample::run;}private static void run() {System.out.println(Hello!);} } 另一个例子 public static void main(String[] args) {Sample sample new Sample();ComparatorString stringLengthComparator sample::compareLength; }private int compareLength(String s1, String s2) {return s1.length() - s2.length(); }流API –基础 流是支持顺序和并行批量操作的一系列元素。 遍历列表 ListString list Arrays.asList(one, two, three, four, five, six);list.stream().forEach(s - System.out.println(s));筛选 Java 8在接口中引入了默认方法。 它们在Stream API中非常方便 PredicateString lowerThanOrEqualToFour s - s.length() 4; PredicateString greaterThanOrEqualToThree s - s.length() 3;list.stream().filter(lowerThanOrEqualToFour.and(greaterThanOrEqualToThree)).forEach(s - System.out.println(s));排序 PredicateString lowerThanOrEqualToFour s - s.length() 4; PredicateString greaterThanOrEqualToThree s - s.length() 3; ComparatorString byLastLetter (s1, s2) - s1.charAt(s1.length() - 1) - s2.charAt(s2.length() - 1); ComparatorString byLength (s1, s2) - s1.length() - s2.length();list.stream().filter(lowerThanOrEqualToFour.and(greaterThanOrEqualToThree)).sorted(byLastLetter.thenComparing(byLength)).forEach(s - System.out.println(s)); 另外在上述例子的默认方法and的java.util.function.Predicate被使用。 默认和静态方法是Java 8中接口的新增方法。 限制 PredicateString lowerThanOrEqualToFour s - s.length() 4; PredicateString greaterThanOrEqualToThree s - s.length() 3; ComparatorString byLastLetter (s1, s2) - s1.charAt(s1.length() - 1) - s2.charAt(s2.length() - 1); ComparatorString byLength (s1, s2) - s1.length() - s2.length();list.stream().filter(lowerThanOrEqualToFour.and(greaterThanOrEqualToThree)).sorted(byLastLetter.thenComparing(byLength)).limit(4).forEach(s - System.out.println(s));收集到清单 PredicateString lowerThanOrEqualToFour s - s.length() 4; PredicateString greaterThanOrEqualToThree s - s.length() 3; ComparatorString byLastLetter (s1, s2) - s1.charAt(s1.length() - 1) - s2.charAt(s2.length() - 1); ComparatorString byLength (s1, s2) - s1.length() - s2.length();ListString result list.stream().filter(lowerThanOrEqualToFour.and(greaterThanOrEqualToThree)).sorted(byLastLetter.thenComparing(byLength)).limit(4).collect(Collectors.toList());并行处理 我使用了一个非常常见的示例来遍历文件列表 public static void main(String[] args) {File[] files new File(c:/windows).listFiles();Stream.of(files).parallel().forEach(Sample::process); }private static void process(File file) {try {Thread.sleep(1000);} catch (InterruptedException e) {}System.out.println(Processing - file); } 请注意在显示示例时我解释了并行处理流的一些已知缺点。 流API –更多示例 制图 遍历目录中的文件并返回FileSize对象 class FileSize {private final File file;private final Long size;FileSize(File file, Long size) {this.file file;this.size size;}File getFile() {return file;}Long getSize() {return size;}String getName() {return getFile().getName();}String getFirstLetter() {return getName().substring(0, 1);}Overridepublic String toString() {return Objects.toStringHelper(this).add(file, file).add(size, size).toString();} } 映射的最终代码 File[] files new File(c:/windows).listFiles(); ListFileSize result Stream.of(files).map(FileSize::new).collect(Collectors.toList());分组 按文件名的首字母对FileSize对象进行分组 MapString, ListFileSize result Stream.of(files).map(FileSize::new).collect(Collectors.groupingBy(FileSize::getFirstLetter));减少 获取目录中最大/最小的文件 OptionalFileSize filesize Stream.of(files).map(FileSize::new).reduce((fs1, fs2) - fs1.getSize() fs2.getSize() ? fs1 : fs2); 如果您不需要FileSize对象而只需要一个数字 OptionalLong max Stream.of(files).map(FileSize::new).mapToLong(fs - fs.getSize()).max();翻译自: https://www.javacodegeeks.com/2014/06/lambda-expressions-and-stream-api-basic-examples.htmllambda ::表达式
http://www.zqtcl.cn/news/405737/

相关文章:

  • html5网站怎么建设后台怎么弄厦门微信网站建
  • 幻影图片一键制作网站建筑工程是干嘛的
  • 技术支持 东莞网站建设东莞天助免费网站申请域名39939cn
  • js打开网站wordpress线报主题
  • 怎么做网站首页弹幕外贸网站高端定做
  • asp.net mvc 做网站做网站原型的软件
  • wordpress网站恢复北京app建设 网站开发公司
  • 给别人做设计的网站aso优化师工作很赚钱吗
  • 网店网站建设规划方案入门编程软件
  • 网站布局企业安全文化建设导则
  • 胶东国际机场建设有限公司网站2021重大军事新闻
  • 企业网站优化的方式萍乡市建设局网站王丽
  • 做网站的收费标准社保网上服务大厅
  • php网站开发安全网站建设管理教程视频教程
  • 网站建设的空间是什么意思海络网站
  • 深圳华强北今晚网站优化推广公司
  • 网站建设行业好做吗太原网站改版
  • 寿光企业建站流程个人网站用什么软件
  • 网站建设与管理自考本全国卷wordpress 关闭文章修订
  • 兴义市建设局网站首页网站开发项目实训总结
  • 个人网站空间收费网络软文营销案例
  • 网站开发文件结构组成微网站移交
  • 西安全网优化 西安网站推广网页浏览器缩略词
  • 网站开发及企业推广营销型网站建设怎么收费
  • 网站建设与管理ppt课件百度云盘关键词推广营销
  • c asp.net网站开发书宁波建设业协会网站
  • 政务网站建设发言材料知名互联网公司有哪些
  • 网站搭建制作建e室内设计网画图
  • 重庆市建设工程施工安全管理信息网北京seo公司网站
  • 国外做调查问卷的网站建设邮费自己的网站 要不要购买服务器的