摘要: 使用装饰者模式实现一个线程安全的Queue队列。public class SynchronizedQueue implements Queue, Serializable {private static final long serialVersionUID = -1439242290701194806L;private final Queue q; public SynchronizedQueue(Queue q) { this.q = q; } public synchronized boolean add(E e) { return q.add(e... 阅读全文
posted @ 2013-09-02 15:33 独行码夫 阅读(1200) 评论(0) 推荐(0) 编辑
摘要: 在开发中经常遇到数据类型转换的问题,大多数都是拿来强制转换,强制转换可能会出现你意想不到的问题:int a = -1;我们经过多重转换之后:int b = (int)(char)(byte) a ;System.out.println(b);预计结果还会是-1吗?打印结果:65535我们来分析下原因:Java使用基于2的补码的二进制运算,因此int类型的数值-1的所有32都是置位的;1、int——>byte 转型很简单,它执行了一个窄化原始类型转化,直接将除8位之外的所有位干掉,留下的是一个8位都被置位了的byte,它仍旧表示-1;2、byte——>char 因为byte是一个有符 阅读全文
posted @ 2013-09-02 15:00 独行码夫 阅读(1057) 评论(0) 推荐(0) 编辑