会员
周边
众包
新闻
博问
闪存
赞助商
所有博客
当前博客
我的博客
我的园子
账号设置
简洁模式
...
退出登录
注册
登录
星、落
博客园
首页
新随笔
联系
订阅
管理
2017年8月1日
CopyOnWriteArrayList分析
摘要: CopyOnWriteArrayList是一个在多线程操作中线程安全的ArrayList的一个变种,她在所有对ArrayList对象的编辑操作(add,set等)都会复制一份副本,因此无论是对ArrayList操作还是对其iterator操作都不会抛ConcurrentModificationExc
阅读全文
posted @ 2017-08-01 10:24 星、落
阅读(1351)
评论(0)
推荐(0)
编辑
2017年6月28日
String源码分析
摘要: String类内部维护了一个char[]类型的value用来存储字符串,相对来说源码较为简单些。 String的不可变主要体现在三个方面: String类被定义为final类型,不可被继承 String中的value[]被定义为final String中的所有生成新的String的操作底层都调用Ar
阅读全文
posted @ 2017-06-28 13:33 星、落
阅读(375)
评论(0)
推荐(0)
编辑
2016年7月18日
ScheduleThreadPoolExecutor源码分析(二)
摘要: DelayedWorkQueue: DelayedWorkQueue实现了BlockingQueue接口,因此其可以作为线程池的任务队列。BlockingQueue的主要属性有以下几个: private RunnableScheduledFuture[] queue:作为最小堆的实现数组,主要存储S
阅读全文
posted @ 2016-07-18 19:37 星、落
阅读(175)
评论(0)
推荐(0)
编辑
ScheduleThreadPoolExecutor源码分析
摘要: Java中ScheduleThreadPoolExecutor主要用于执行延迟任务或者按照一定的频率执行任务。其中scheduleAtFixedRate函数是按照一定频率执行任务,scheduleWithFixedDelay可以根据延迟一定时间再执行任务。本文将参考ScheduleThreadPoo
阅读全文
posted @ 2016-07-18 11:10 星、落
阅读(590)
评论(0)
推荐(0)
编辑
2015年1月11日
非递归二叉树的遍历
摘要: 我们都知道,对二叉树进行递归遍历非常简单,但递归算法需要额外的栈机制来存储每次递归的值。既然递归算法内部使用栈实现的,那么我们也可以借助于栈来实现二叉树的非递归遍历。下面我们将讲解利用非递归实现二叉树的前序、中序和后序遍历。1、非递归二叉树前序遍历:我们知道,二叉树的前序遍历对节点的访问顺序是根节点...
阅读全文
posted @ 2015-01-11 10:41 星、落
阅读(395)
评论(0)
推荐(0)
编辑
2015年1月10日
全排列的递归实现
摘要: 对于全排列问题,假设我们有n个不同的数字,需要对其进行全排列,那么全排列的总数为f(n),f(n) = n * f(n - 1)。我们可以看做是将第一个数字固定,然后对后边n-1个数字进行全排,这样第一个数字就有n种选择。同理,在求f(n - 1)时,可以看做第二个数字固定,后边n-2个数字进行...
阅读全文
posted @ 2015-01-10 23:47 星、落
阅读(259)
评论(0)
推荐(0)
编辑
公告