【JAVA8】Stream\Comparator

news/2024/11/29 7:56:42/

Stream

在这里插入图片描述

Reduction, 给N个数值,求出其总和/最大值/最小值/均值这一类的操作,称为Reduction

Option

Optional类是一个可以为null的容器对象。如果值存在则isPresent()方法会返回true,调用get()方法会返回该对象。

Optional 类的引入很好的解决空指针异常 

1、ofNullable可以null

2、of不可以null

3、isPresent判断是否存在

4、orElse存在返回,不存在返回0

5、get()获得值


public class Java8Tester {public static void main(String args[]){Java8Tester java8Tester = new Java8Tester();Integer value1 = null;Integer value2 = new Integer(10);// Optional.ofNullable - 允许传递为 null 参数Optional<Integer> a = Optional.ofNullable(value1);// Optional.of - 如果传递的参数是 null,抛出异常 NullPointerExceptionOptional<Integer> b = Optional.of(value2);System.out.println(java8Tester.sum(a,b));}public Integer sum(Optional<Integer> a, Optional<Integer> b){// Optional.isPresent - 判断值是否存在System.out.println("第一个参数值存在: " + a.isPresent());System.out.println("第二个参数值存在: " + b.isPresent());// Optional.orElse - 如果值存在,返回它,否则返回默认值Integer value1 = a.orElse(new Integer(0));//Optional.get - 获取值,值需要存在Integer value2 = b.get();return value1 + value2;}
}

Comparator

1.普通排序

 List<FileListDto> sortList = fileList.stream().sorted(FileListDto::getPriceEnableVendor).collect(Collectors.toList());

2.有空值的排序

        List<FileListDto> sortList = fileList.stream().sorted(Comparator.comparing(FileListDto::getPriceEnableVendor, Comparator.nullsLast(String::compareTo))).collect(Collectors.toList());

http://www.ppmy.cn/news/866368.html

相关文章

基于VHDL语言的全加器的设计

基于VHDL语言的全加器的设计 全加器可以由两个半加器和一个或门连接而成&#xff0c;这样得到的半加器电路称为顶层文件。 设计原理图如下&#xff1a; 下面全加器的设计采用层次结构的VHDL程序设计方法&#xff0c;采用元件例化语句。 工程文件名与顶层文件&#xff08;全加…

VHDL语言基础-组合逻辑电路-编码器

目录 编码器的设计&#xff1a; 什么是编码器(Decoder)&#xff1a; 编码器的功能&#xff1a; 优先级编码器&#xff1a; 优先级编码器实现&#xff1a; 编码器的设计&#xff1a; 与译码器类似&#xff0c;编码器同样是数字系统中广泛使用的多输入多输出组合逻辑部件。 …

VHDL语言的数据类型

如前面的笔记所述&#xff0c;在VHDL语言中信号、变量、常数都要指定数据类型。为此&#xff0c;VHDL提供了多种标准的数据类型。另外&#xff0c;为使用户设计方便&#xff0c;还可以由用户自定义数据类型。这样使语言的描述能力及自由度更进一步提高&#xff0c;从而为系统高…

VHDL语言的基本单元(实体和结构体)

VHDL语言设计的基本单元就是VHDL语言的一个基本设计实体&#xff08;Entity&#xff09;。 一个实体&#xff0c;简单的可以是一个与门&#xff0c;复杂点的可以是一个微处理器或一个系统。但是&#xff0c;不管是简单的数字电路&#xff0c;还是复杂的数字电路&#xff0c;其基…

VHDL 计数器实验看VHDL语言

之前的eda课都在划水…利用这个程序来总结一下eda的语法 二十进制计数器 其实二十进制计数器原理很简单。跟随时钟信号相加&#xff0c;即用语句Q Q 1从0到19&#xff0c;当读到19的时候又回到0 其实就是下面的process语句&#xff0c;而clk event那一句其实就是确保&#x…

计算机组成原理VHDL语言实现16位ALU实验

计算机组成原理实验第二个&#xff0c;VHDL语言&#xff0c;ISE设计环境设计一个16位的ALU。 资源下载&#xff1a; 链接&#xff1a;https://pan.baidu.com/s/1cyhJ2ZynUMMFnYi2YOIMmA 提取码&#xff1a;0upp library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGI…

(萌新的数电学习)用VHDL语言设计简易模型机结构

实验背景&#xff1a; 计算机的工作过程可以看作是许多不同的数据流和控制流在机器各部分之间的流动&#xff0c;数据流所经过的路径称作机器的数据通路。数据通路不同&#xff0c;指令执行所经过的操作过程就不同&#xff0c;机器的结构也就不一样。 VHDL语言 library ieee;…

基于VHDL语言的状态机设计

基于VHDL语言的状态机&#xff08;FSM&#xff09;设计 状态机(Finite State Machine,FSM) 状态机的组成:如图所示 状态机的种类&#xff1a; Mealy型&#xff1a;当前状态、当前输入相关Moore型&#xff1a;仅当前状态相关VHDL代码结构&#xff1a;时序逻辑部分&#xff1a…