
Java SE
luonanqin
这个作者很懒,什么都没留下…
展开
-
正则表达式匹配正确也报错?
<br /> 正则表达式,我想大家都不陌生。Java有,C#有,JavaScript有,其他语言也有,大致的匹配规则都很相似。如果用过正则表达式的开发人员,都觉得这个是个好东西。不过本人在一次获取一段字符串里的数字时遇到一个奇怪的问题。代码如下:<br />package test;import java.util.regex.Matcher;import java.util.regex.Pattern;public class PatternTest{ public stat原创 2011-03-09 07:40:00 · 4792 阅读 · 0 评论 -
Java 7七大新功能预览
<br />Java 7已经完成的7大新功能:<br />1 对集合类的语言支持;<br />2 自动资源管理;<br />3 改进的通用实例创建类型推断;<br />4 数字字面量下划线支持;<br />5 switch中使用string;<br />6 二进制字面量;<br />7 简化可变参数方法调用。<br />下面我们来仔细看一下这7大新功能:<br />1 对集合类的语言支持<br />Java将包含对创建集合类的第一类语言支持。这意味着集合类的创建可以像Ruby和Perl那样了。<br />原转载 2011-03-21 15:59:00 · 1261 阅读 · 0 评论 -
如何用Mac完美编译OpenJDK 7
前段时间为了研究JVM,于是去下了OpenJDK6编译一把,就因为少声卡驱动,又没查到如何解决,结果总是编译不成功,遂放弃。但是近来调试jdk源码的时候,发现很多调试信息都没有,看得我那个辛苦啊。正好一朋友成功编译了OpenJDK7,我就又去下了一个试编,虽然在CentOS下成功了,但是我Mac下又用不了,所以我就花了点时间再次在Mac下弄一次。整体来说还算顺利,现在已经很开心的用上了。原创 2014-12-01 13:16:29 · 13125 阅读 · 1 评论 -
ReentrantLock的lock-unlock流程详解
在jdk1.5之前,多线程之间的同步是依靠synchronized来实现。synchronized是java的关键字,直接由jvm解释成为指令进行线程同步管理。因为操作简单,而且现在jdk的后续版本已经对synchronized进行了很多的优化,所以一直是大家编写多线程程序常用的同步工具。那为什么要推出新的同步api呢?jdk1.5发布的时候,synchronized性能并不好,这可能是concurrent包出现的一个潜在原因,但是更重要的是新的api提供了更灵活,更细粒度的同步操作,以满足不同的需求。但是原创 2014-12-11 21:12:48 · 28067 阅读 · 16 评论 -
Condition的await-signal流程详解
大概的整个过程是: 调用await的线程都会进入一个Condition队列。调用signal的线程每一次都会从firstWaiter开始找出未取消的Condition Node放到release队列里,然后调用signal的线程在await或者unlock的时候执行release方法才有机会将其解除阻塞。相对于lock-unlock,正常的流程要简单一些,但是对于中断处理会更为复杂。原创 2014-12-12 15:53:03 · 20625 阅读 · 5 评论