草庐IT

读函数式编程思维笔记05_现实应用

1. Java81.1. 除了增加函数式特性,还增加了一些配合使用的语法糖衣1.2. 函数式接口1.2.1. SAM(SingleAbstractMethod,单抽象方法)接口1.2.1.1. 含有单一方法的接口是Java的一种习惯用法1.2.1.2. Runnable和Callable接口都是有代表性的例子1.2.2. 对旧有SAM接口的增强,它允许我们用lambda块取代传统的匿名类来就地实例化一个接口1.3. 默认方法1.3.1. 一些在接口类型中声明的,以default关键字标记的,非抽象、非静态的public方法(且带有方法体定义)1.4. mixin1.4.1. 介于接口和父类之间

读函数式编程思维笔记05_现实应用

1. Java81.1. 除了增加函数式特性,还增加了一些配合使用的语法糖衣1.2. 函数式接口1.2.1. SAM(SingleAbstractMethod,单抽象方法)接口1.2.1.1. 含有单一方法的接口是Java的一种习惯用法1.2.1.2. Runnable和Callable接口都是有代表性的例子1.2.2. 对旧有SAM接口的增强,它允许我们用lambda块取代传统的匿名类来就地实例化一个接口1.3. 默认方法1.3.1. 一些在接口类型中声明的,以default关键字标记的,非抽象、非静态的public方法(且带有方法体定义)1.4. mixin1.4.1. 介于接口和父类之间

读Java8函数式编程笔记05_数据并行化

1. 并发1.1. 两个任务共享时间段1.2. 一个程序要运行两个任务,并且只有一个CPU给它们分配了不同的时间片,那么这就是并发,而不是并行2. 并行2.1. 两个任务在同一时间发生2.2. 为缩短任务执行时间,将一个任务分解成几部分,然后并行执行2.3. 和顺序执行的任务量是一样的,区别就像用更多的马来拉车,花费的时间自然减少了2.4. 重要2.4.1. 不能再依赖提升CPU的时钟频率来提高现有代码的计算能力2.4.2. 需要利用现代CPU的架构,而这唯一的办法就是编写并行化的代码2.4.3. 阿姆达尔定律2.4.3.1. 一个简单规则,预测了搭载多核处理器的机器提升程序速度的理论最大值2

读Java8函数式编程笔记05_数据并行化

1. 并发1.1. 两个任务共享时间段1.2. 一个程序要运行两个任务,并且只有一个CPU给它们分配了不同的时间片,那么这就是并发,而不是并行2. 并行2.1. 两个任务在同一时间发生2.2. 为缩短任务执行时间,将一个任务分解成几部分,然后并行执行2.3. 和顺序执行的任务量是一样的,区别就像用更多的马来拉车,花费的时间自然减少了2.4. 重要2.4.1. 不能再依赖提升CPU的时钟频率来提高现有代码的计算能力2.4.2. 需要利用现代CPU的架构,而这唯一的办法就是编写并行化的代码2.4.3. 阿姆达尔定律2.4.3.1. 一个简单规则,预测了搭载多核处理器的机器提升程序速度的理论最大值2

day22--Java集合05

Java集合0511.HashSet课堂练习11.1课堂练习1定义一个Employee类,该类包括:private成员属性name,age要求:创建3个Employee对象放入HashSet中当name和age的值相同时,认为是相同员工,不能添加到HashSet集合中思路:不同对象的哈希值一般会不一样,导致在添加对象时可能会在table数组的不同位置添加,因此想要比较对象的属性值,就要重写hashCode方法,使具有相同属性的对象具有一样的hash值,这样才能在插入时比较对象的值;但不同的对象也可能具有相同的hash值,所以要重写equals方法来比较对象属性值如下图:在add()方法最终调用

day22--Java集合05

Java集合0511.HashSet课堂练习11.1课堂练习1定义一个Employee类,该类包括:private成员属性name,age要求:创建3个Employee对象放入HashSet中当name和age的值相同时,认为是相同员工,不能添加到HashSet集合中思路:不同对象的哈希值一般会不一样,导致在添加对象时可能会在table数组的不同位置添加,因此想要比较对象的属性值,就要重写hashCode方法,使具有相同属性的对象具有一样的hash值,这样才能在插入时比较对象的值;但不同的对象也可能具有相同的hash值,所以要重写equals方法来比较对象属性值如下图:在add()方法最终调用

《分布式技术原理与算法解析》学习笔记Day05

分布式共识什么是分布式共识?分布式共识就是在多个节点均可独自操作或记录的情况下,使得所有节点针对某个状态达成一致的过程。有哪些常见的分布式共识算法?一般有3种分布式共识算法:PoW(Proof-of-Work,工作量证明)PoS(Proff-of-Stake,权益证明)DPoS(DelegatedProofofStake,委托权益证明)什么是区块链?区块链是一种链式数据结构,由包含交易信息的区块通过哈希指针、根据时间顺序连接而成,也是一种分布式数据库。区块是区块链的主要组成部分,每个区块由区块头和区块内容数据构成。区块头记录了时间戳,并用于保证区块链的连接性,区块内容数据中包含了多条交易信息。

《分布式技术原理与算法解析》学习笔记Day05

分布式共识什么是分布式共识?分布式共识就是在多个节点均可独自操作或记录的情况下,使得所有节点针对某个状态达成一致的过程。有哪些常见的分布式共识算法?一般有3种分布式共识算法:PoW(Proof-of-Work,工作量证明)PoS(Proff-of-Stake,权益证明)DPoS(DelegatedProofofStake,委托权益证明)什么是区块链?区块链是一种链式数据结构,由包含交易信息的区块通过哈希指针、根据时间顺序连接而成,也是一种分布式数据库。区块是区块链的主要组成部分,每个区块由区块头和区块内容数据构成。区块头记录了时间戳,并用于保证区块链的连接性,区块内容数据中包含了多条交易信息。

day17--Java常用类05

Java常用类5.其他常用类5.1Math类java.lang.Math提供了一系列静态方法用于科学计算;其方法的参数和返回值类型一般为double型。如果需要更加强大的数学运算能力,计算高等数学中相关内容,可以使用apachecommons下面的Math类库。packageli.normalclass.other;publicclassTestMath{publicstaticvoidmain(String[]args){System.out.println(Math.PI);//PISystem.out.println(Math.random());//随机数System.out.prin

day17--Java常用类05

Java常用类5.其他常用类5.1Math类java.lang.Math提供了一系列静态方法用于科学计算;其方法的参数和返回值类型一般为double型。如果需要更加强大的数学运算能力,计算高等数学中相关内容,可以使用apachecommons下面的Math类库。packageli.normalclass.other;publicclassTestMath{publicstaticvoidmain(String[]args){System.out.println(Math.PI);//PISystem.out.println(Math.random());//随机数System.out.prin