
j2se
文章平均质量分 80
sunlujing
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
NIO socket 的简单连接池
在最近的项目中,需要写一个socket 与 底层服务器通信的模块。在设计中,请求对象被封装 xxxRequest,消息返回被封装为 xxxResponse. 由于socket的编程开发经验少,一开始我使用了短连接的方式,每个请求建立一个socket通信,由于每个socket只进行一次读写,这大大浪费了系统资源。 于是考虑使用长连接,系统公用一个client socket ...2011-05-25 11:02:14 · 509 阅读 · 0 评论 -
Foreach 与迭代器
在java编程中我会大量的使用 foreach 语法来遍历Collection对象 以及数组对象。 本文主要是解释一下foreach的实质以及如何改变 foreach遍历的行为? point A: foreach语句之所以能够工作是因为 在JavaSe5 中引入的Iterable接口,该接口包含一个能产生Iterator对象的iterator方法。该Iterable 接口被...2011-09-26 17:56:09 · 182 阅读 · 0 评论 -
Set 如何比较重复元素
HashSet部分: 以下以HashSet为例进行分析。 从Hashset类的主体部分: public class HashSet<E> extends AbstractSet<E> implements Set<E>, Cloneable, java.io.Serializable { static final long serial...原创 2011-09-26 18:02:51 · 314 阅读 · 0 评论 -
ClassLoader 深入解析
本文是根据是在《北京圣思园深入JAVA虚拟机系列视频》的基础上自己整理而来,内容范围没有超过其系列所述,在此给予说明。在进入ClassLoader的分析之前我们先看一个JAVA程序例子。 class Singleton { /* case 1 */ private static Singleton singleton = new Si...2011-07-18 15:14:04 · 160 阅读 · 0 评论 -
最短路径算法记录多条路径
在使用Dijkstra算法计算最段路径的时候,如果只有多条最段路径默认只能输出一条,其实只要修改一下代码就可以得到多条最段路径。 public ArrayList<ArrayList<Node>> shortPathAstar(Node src,Node des){ open.clear(); closed.clear(); open.ad...2011-11-19 21:09:36 · 2028 阅读 · 0 评论 -
java 实现bitMap 结构
编程珠玑中第一篇讲的就是使用bitmap来排序大文件里面的数据。下面给出一个简单的BitMap实现。主要使用Byte数组。主要就是shiyong为操作来设置为1 的元素。 public class BitMap { private byte[] bitMap = null; public BitMap(int size){ //初始化时需要计算一共要使用...2012-06-28 21:50:30 · 434 阅读 · 0 评论 -
编程之美 烙饼问题 java实现(检测状态是否出现过)
import java.util.HashMap;import java.util.HashSet;import java.util.Map;import java.util.Set; /** * 对应编程之美的烙饼翻转 * @author sunlujing * */public class CookieReverse { private in...原创 2013-03-04 21:04:09 · 195 阅读 · 0 评论 -
我对非阻塞网络编程的理解
在传统的网络编程中我们依赖于ServerSocket,Socket进行通信,大致的框架就是ServerSocket调用accept方法,等待客户端的连接,如果连接进来的时候则创建一个服务器端socket,客户端和服务器端socket建立好InputStream 和outputStream通道进行通信,在这个网络IO的过程中inputStream的read 和outputStream的write...2013-05-01 15:32:21 · 327 阅读 · 0 评论 -
最坏情况O(N) 求数组中第K 大的元素。
求数组中第K的元素的一般方法就是使用快速排序的划分,Partion(seq,start,end) = p, 如果p=k 则ok。如果p >k 则在start, p -1的区间里找第K大的数,Partion(seq,start,p-1)否则partion(seq,p+1,end)算法的平均时间复杂度为O(N),最坏情况为N^2,即每次划分把数组变为为(n-1) 和1的两断....2013-06-01 20:23:03 · 253 阅读 · 0 评论