范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

Java8新增6接口OptionalConsumer等

  Predicate接口(断言)Function接口(函数)Supplier接口(供应商)Consumer接口(消费者)Comparator接口(比较)Optional接口( 可选) Optional// 获取学生姓名 private String getInfoName1(Student student){   return student.getInfo().getName(); } // 为了避免空指针异常,Java 8 之前修改为 private String getInfoName2(Student student){   if(student!=null){   Info info = student.getInfo();   if(info!=null){    String name = info.getName();    return name;   }  }    return null; } // Java 8 中使用Optional private String getInfoName3(Student student){   return Optional.ofNullable(student).map(Student::getInfo).map(Info::getName)   .orElse("DEFAULT_NAME"); // DEFAULT_NAME 没有默认值,写成null即可 } Supplier
  Supplier 接口可以理解为一个容器,用于装数据的,也可以理解为用来创建对象的, Supplier supplier = new Supplier() {   @Override   public String get() {    return LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyyMMddHHmmssSSS")) 	 + new Random().nextInt(10);   } }; Student student = new Student(); String id = Optional.ofNullable(student).map(Student::getId)   .orElseGet(supplier); // 获取student的id,如果为null,则按时间戳随机生成一个ID System.out.println(id); Consumer(提取forEach)
  在进行forEach的时候,forEach所需传入的参数就是一个Consumer,如果这个forEach的内部方法需要多处使用,提取成一个Consumer即可。 Consumer consumer = (x) -> {   int number = x*2;   System.out.print(number); }; Stream.of(1,2,3,4,5).forEach(consumer); // 打印246810 Stream.of(6,7,8,9,10).forEach(consumer); // 打印1214161820 Comparator// 数字直接排序 List list = Arrays.asList(1, 4, 2, 6, 2, 8); list.sort(Comparator.naturalOrder()); // 升序 list.sort(Comparator.reverseOrder()); // 降序 // 对象按属性排序 Supplier supplier = () -> {   Student student = new Student();   student.setAge(new Random().nextInt(20));   student.setPrice(new Random().nextInt(100));  return student; }; List students = Stream.generate(supplier).limit(10).collect(Collectors.toList()); students.sort(Comparator.comparingInt(Student::getAge).reversed()   .thenComparingInt(Student::getPrice)); // 先以年龄降序,再以价格升序 System.out.println(students); Predicate(提取filter)
  Predicate就是一个类似于 bool 类型的判断的接口 Predicate predicate = (t) -> t > 10; Stream stream = Stream.of(1, 23, 3, 4, 5, 56, 6, 6); List list = stream.filter(predicate).collect(Collectors.toList()); list.forEach(System.out::println); // 输出10以上的数字 Function(提取map)
  function作用就是转换作用,将输入数据转换成另一种形式的输出数据 Function function = new Function() {   @Override   public Integer apply(String s) {   return s.length();//获取每个字符串的长度,并且返回   } }; Stream stream = Stream.of("aaa", "bbbbb", "ccccccv"); Stream stream1 = stream.map(function); stream1.forEach(System.out::println); // 输出字符串的长度

王勇在出席金砖国家工业互联网与数字制造发展论坛时强调把握工业互联网发展机遇深化数字化转型务实合作来源午间新闻广场台海网5月25日讯据午间新闻广场报道国务委员王勇23日在厦门出席金砖国家工业互联网与数字制造发展论坛开幕式并致辞。王勇表示,制造业数字化转型是大势所趋,契合金砖国家网络上漂着的虚拟财产怎么办环球视野在一切皆被记录的互联网时代网络上漂着的虚拟财产怎么办作者刘俊杰(中国人民大学马克思主义学院讲师当代政党研究平台研究员)互联网时代,随着互联网技术蓬勃发展,电子网络的衍生物如汤姆猫携手百度超级链上线3D数字藏品本报记者吴文婧见习记者冯思婕5月24日,汤姆猫(300459)官方发布消息称,旗下全球知名IP会说话的汤姆猫家族携手百度超级链,将于5月25日26日正式发布时代逐光者3D数字藏品。2500元3000元水桶机,vivoS15该有的都有(GYDDY)今年如果预算2000元到3000元,想买一台能打游戏,性能强悍,充电快的手机,你会发现选择性很多,基本只要搭载旗舰芯片骁龙870,888,骁龙8,和天玑8100,天玑9000的机器RTM正式敲定微软承认Win1122H2版本就是Build22621IT之家5月25日消息,Windows11第一个大版本更新现已敲定。MichaelReinders发现了一份微软刚发布的官方文件,硬件认证页面中提到Windows1122H2版本的张朝阳回应搜狐遭遇工资补助诈骗,搜狐员工公司正开展反诈培训近日,网传搜狐全体员工遭遇电信诈骗,部分员工受骗,工资卡内余额遭划走。网传资料显示,5月18日早晨,搜狐全体员工均收到一封5月份员工工资补助通知的邮件,发件人显示为搜狐财务部。部分小鹏汽车P5真能跨级打击B级车的坐局大佬吗?7之后,小鹏又在今年祭出了一款重磅产品P5。它既没有小鹏G3的通过性,也没有小鹏P7轿跑式的身段,但是它似乎更懂当前消费者的用车需求。因为它能够代步上下班接送小孩,甚至还能充当移动巅峰之作小米12Ultra曝光,小米11爆降至超低新价,网友欢呼曝顶级配置硬刚iPhone14的小米12Ultra巅峰之作也被进一步确认了,曝顶级配置硬刚iPhone14的小米12Ultra巅峰之作对比小米11Ultra并非全方面领先的,曝顶级高刷电视王者,98英寸TCLT7E全方位吊打海信98E7GPro近几年,手机显示器纷纷用上高刷屏,高刷能够带来更流畅的视觉体验。现如今没有搭配高清高刷的电子科技产品,已经很难满足我们越来越苛刻的选购需求。像电视这类耐消品,更换周期长,如果支持高870新机续航压力体验实测,10电量最多能打几局王者?骁龙870作为集高性能与低功耗为一体的处理器,被无数用户所追捧。所以通常搭载了骁龙870处理器的手机,往往都会有着不错的体验。最近,iQOO就带来了一款起售价1999元的870新机美国软件巨头的无奈能收割全球市场,在中国却赚不到钱?随着国际化的发展,国际上出现了许多科技产业,这些大科技企业大部分来自美国。但是中国的小米公司科大讯飞腾讯科技公司都是世界知名的科技公司。中国在国际科技行业也占有一席之地。除了几家著
华为捐赠鸿蒙最核心基础架构央视财经视频截图6月2日,华为鸿蒙操作系统正式发布,这是一款面向全场景的分布式操作系统,和苹果安卓等手机电脑系统不同,鸿蒙系统可用于物联网各种设备。它既能控制手机,同时也能适配PCiPhone13将全系标配LiDAR传感器两款Pro型号最高容量1TB在给投资者的一份备忘录中,Wedbush分析师DanielIves认为苹果今年将会在iPhone13Pro和iPhone13ProMax两款Pro型号中提供最高1TB的存储选项,而智能汽车不靠谱?特斯拉想要谋害朕特斯拉最近真是流年不利,刹车失灵的风波还未平息,又出现了车门打不开导致车主差点窒息的奇葩事件。5月30日上午,深圳的特斯拉车主文先生在给车充电时遇到故障,在拔掉充电枪回到车内之后,鸿蒙系统的发布,也是对美国强硬地说不,华为打破美国垄断就在昨晚万人瞩目的华为鸿蒙系统的发布,这个在2019年立项,2021年就发布的全球首款国产操作系统,正式登陆世界的舞台,也是中国科技树立的新标杆。其实鸿蒙系统的出现,可以说是历经各Win10太阳谷更新中的Win32和UWP应用也将支持圆角UIIT之家6月4日消息微软昨天隆重宣布,该公司将于6月24日发布下一代Windows,也就是大家心心念念的太阳谷更新。通过太阳谷更新,微软将对Win10的基本设计进行不少改动,最显着GS4Plus2。0T预售价14。6万,车身尺寸大过CS75Plus,支持5G网络在今年上海车展中广汽传祺展台除了关注度很高的影豹亮相,还带来了一款新的SUV产品传祺GS4Plus,在之后对于广汽传祺GS4Plus的详细解析文章中也有不少关注这台SUV产品的粉丝鸿蒙OS有多厉害?或许会成为汽车界的Windows!6月2日晚上8点,华为举行HarmonyOS2及华为全场景新品发布会,其中HarmonyOS即近两年传得沸沸扬扬的鸿蒙操作系统。看完发布会上半场,笔者直呼好家伙,这简直是出类拔萃出安卓更新鸿蒙OS后,游戏账号就废了?安卓鸿蒙游戏数据相通吗?经常玩手游的小伙伴会发现一个问题,那就是苹果IOS端与安卓端的资料互不相通。如果一个苹果手机用户突然想换安卓手机了,就会发现自己打游戏要再注册一个账号重新开始,这是因为安卓和苹果的以普通的用户视角重度使用红米k40一个月之后的感受红米k40这款手机发布也有一段时间了,而且在今年的天猫618平价手机排行榜中也是遥遥领先的。这款产品于我个人而言也使用了一段时间,同样将他当做主力机来体验,所以今天抛开测评的角度以大手笔,收购中兴无线通信专利!OPPO进一步加宽技术护城河近年来,国产手机厂商越来越重视创新,很多技术在世界上都是非常领先的。比如说OPPO就在闪充屏下摄像头折叠屏领域保持领先地位同时在一众智能手机厂商中,OPPO的专利增长速度非常快,也特斯拉面临供应链挑战,马斯克厂家囤芯片如同普通人抢厕纸芯片慌持续蔓延。今年以来,半导体行业产能严重紧缺,造成了汽车行业供需失衡的情况,各大车企表示缺芯将影响产能计划,甚至可能将出现交付延迟或停产的情况。一场波及全球汽车企业的芯片短缺危