Java8特性

Lambda表达式

函数式编程简介

函数式编程(英语:functional programming)或称函数程序设计、泛函编程,是一种编程范式,它将电脑运算视为函数运算,并且避免使用程序状态以及易变对象。其中,λ演算(lambda calculus)为该语言最重要的基础。而且,λ演算的函数可以接受函数当作输入(引数)和输出(传出值)。(摘自Wikipedia)

Integer小细节

Integer

IntegerCache

在Java中,创建的对象会存储在堆内存,·IntegerCache·主要用来做缓存,减少内存的重复消耗。但是IntegerCache缓存的数据范围在-128到127之间。可以通过 -XX:AutoBoxCacheMax=high 来指定这个缓冲池的大小,JVM通过 java.lang.IntegerCache.high 系统属性来存储该值,IntegerCache初始化的时候就会读取该系统属性来决定大小。以下为源码:

TreeMap源码分析

简介

TreeMap底层通过红黑树实现,在查询性能上能达到O(logn),由于使用红黑树结构进行存储,所以TreeMap的元素都是有序的。同时,这也是一个非线程安全的Map,无法在并发环境下使用。

LinkedList源码分析

简介

LinkedList底层采用双向链表结构实现,所以在存储元素功能上,并不需要扩容机制,但是需要额外的空间存储指针,头插和尾插的时间复杂度为O(1),指定位置插入的时间复杂度为O(n)LinkedList是非线程安全的集合。

0%