ArrayList继承自AbstractList,AbstractList为“random access”的数组提供了基本的实现。随机访问数据是相对于顺序访问数据而言,例如链表的形式。AbstractSequentialList为链表形式的顺序访问提供了基本实现。AbstractList提供了默认的随机访问数据的iterator。AbstractList继承自AbstractCollection,AbstractCollection为Collection提供了基本实现。
more >>⚠️版权声明:文章可以转载,但请注明文章来源:http://itanch.github.io/
ArrayList继承自AbstractList,AbstractList为“random access”的数组提供了基本的实现。随机访问数据是相对于顺序访问数据而言,例如链表的形式。AbstractSequentialList为链表形式的顺序访问提供了基本实现。AbstractList提供了默认的随机访问数据的iterator。AbstractList继承自AbstractCollection,AbstractCollection为Collection提供了基本实现。
more >>java.util.List
在Java8中引入该方法,用来替换list中的每个元素。
|
|
|
|
同样sort函数也是在1.8中引入,并且可以使用lambda表达式定义自己的比较规则,上面四种排序结果都是一样的。这里使用了Comparator.comparingInt
,该方法可以将非int对象先映射为int型,然后进行比较。
具体实现:
|
|
这里首先将原来的list的copy为一个数组,然后再进行排序,这里采用的是merge sort。为什么要先copy下来,排序完成后再设置原list?官方解释是在原数组上进行排序可能会导致n2log(n)的复杂度。
toArray
函数将基于Collection的结构转化成了数组结构,这里的ListArray的toArray方法是浅拷贝,从下面例子可以看出:
输出是:
说明创建的array是指向一个新的数组对象,但是数组中每一项保留的引用是指向原来的对象的。
|
|
List存储的是有序的数组,所以划分时会按照顺序进行划分。
集合类关系:
|
|
循环加消息队列是实现异步和事件驱动的有效方式。在Android框架和Nodejs框架中,都采用了类似的架构。
这篇文章主要介绍
《Netty实战》中画的已经非常清楚,这里我照搬了下来。
Netty is an asynchronous event-driven network application framework
for rapid development of maintainable high performance protocol servers & clients.
这里通过实现一个简单的Echo服务器和客户端来演示Netty的使用。参考《Netty实战》。
java version “1.8.0_121”
Java(TM) SE Runtime Environment (build 1.8.0_121-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.121-b13, mixed mode)
Maven: 3.5.0
Netty: 4.1.11.Final
more >>ubuntu 14.04
minikube version: v0.19.0
Docker version 1.12.1
minikube是kubernetes的单机试玩版。
more >>文章写于2014年11月,当时的自己本科四年级,导师让我翻译一个叫The Architecture of Open Source Applications的书,然后就有了这两篇文章。至于为什么就翻译了两篇,因为翻译到第二篇的时候导师告诉我是叫我看,不是让我翻译。是不是我真的听错了已经不得而知,也许是看到我翻译的这么烂也不想让我继续下去了😂。两篇文章已经丢在github上有些年头了,本来是想翻译完所有的文章,搞个大新闻,结果就这两片孤零零的在仓库里。现在回想起来本科即将毕业的自己,雄心勃勃的要干一番大事业,如今读研到了找工作的时节却又多些心酸和迷茫。往前走终会有路,热血不会冷却。
Git能够让合作者们使用一个p2p的网络仓库来维护工作的电子文档部分(不仅仅局限于代码)。Git支持分布式的工作流程,允许部分工作暂时的分散,最后再聚集一起。
more >>tag:
缺失模块。
1、请确保node版本大于6.2
2、在博客根目录(注意不是yilia根目录)执行以下命令:
npm i hexo-generator-json-content --save
3、在根目录_config.yml里添加配置:
jsonContent: meta: false pages: false posts: title: true date: true path: true text: false raw: false content: false slug: false updated: false comments: false link: false permalink: false excerpt: false categories: false tags: true