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

深圳市网站建设_网站建设公司_JavaScript_seo优化

东莞网站排名优化价格,网站备案流程详解,突发 佛山出大事,官方网站后台怎样做超链接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.ihoyoo.com/news/15293.html

相关文章:

  • 网站建设哪家好 北京aws如何搭建wordpress
  • 用ppt做网站方法使用wordpress快速建站视频教程
  • 基于html5动画的网站网址大全名称
  • 网站运营总监南昌企业建站系统
  • linux上搭建网站企业网络规划毕业设计
  • 无锡做网站公司费用价格上海搬家公司价目表
  • 汽车租赁网站建设软件开发平台是什么
  • 网站制作教程网站如何域名解析网站建设
  • 网站建设需要租赁服务器吗然后建设自营网站
  • 广东企业网站seo报价图文识别类微信小程序是什么
  • 广州我网站制作id怎么打开wordpress
  • 公司网站备案需要每年做吗电子商务网站的特点
  • 网站建设分金手指专业二九网站建设的流程电子商务
  • 丹东做网站公司做软装素材从哪些网站找
  • 做网站反复修改网站建设经营范围
  • 如何做一个网站代码本地网站源码
  • 网站外链发布上海外贸公司企业名录
  • 在线评审wordpressseo是付费还是免费推广
  • 网站建设财务规划网站推广的主要方式
  • 一般设计网站页面用什么软件怎样做购物网站
  • 做网站 异地域名量品定制怎么发展客户
  • 如何申请网站优化工作flash网站什么意思
  • wordpress调用discuz网站建设及优化 赣icp
  • 网站推广一般多少钱h5平台网站开发
  • 网站规划建设与管理维护教学大纲自己做的网站如何上首页
  • 凡科的网站怎么做百度推广服务号与wordpress
  • 济南模板建站软件wordpress注册页修改
  • 网站地图类型义乌网站设计
  • 静态网站 挂马如何免费弄一个网站
  • 西安免费公司网站设计下面哪些是用作电子商务网站开发