易截截图软件、单文件、免安装、纯绿色、仅160KB

复习《Thinking in Java》笔记二:第十一章笔记

Java容器类库主要包含两种类型Collection(List,Set,Queue)和Map,它们的区别在于每个槽保存的元素个数,Collection只保存一个,而Map保存键和值。
1.当使用Arrays.asList()时,它会在使用一个final的数组作为底层实现,因此任何设计到更改其长度大小的操作都将抛UnsuportedExceptio异常。
2.final的数组,不能改变大小,但是能改变具体位置的值,final字段的初始化可以在声明时候,或者构造函数中。
3.ArrayList长于随机访问,而LinkedList则长于插入。
4.在比较indexOf,remove时候,需要注意参数对象的equals()方法,会根据此方法来比较。
5.如果只是遍历,foreach语法更加简洁,但是如果涉及修改则使用迭代器更加优雅。
6.ListIterator比Iterator的优势在于可以双向移动,而且可以使用set方法修改它所访问到的元素。
7.Stack(FILO)中的peek()返回栈顶元素,但不弹出,push()压栈,pop()弹出。
   JDK中的栈是使用vector实现的,压栈相当于vector的addElement,它们都是同步的
8.set中的元素是无序的,如果想要有序,则使用TreeSet。
9.LinkedList (FIFO)实现了Queue接口,因此可以使用它表示queue。
   其中offer()表示在尾部增加一个元素(在内部它会调用add())。
   peek()和element()都在不移除元素的情况下,返回队头,但是peek()先检测siez是否等于0,若为0则返回null,再调用getFirst(),而element()则直接调用getFirst(),getFirst()在为0是会抛出一个NoSuchElementException异常。
   poll()和remove()方法也类似。


相关文档:

java action 路径问题

StringBuilder path = new StringBuilder(request.getScheme());
  path.append("://").append(request.getServerName());
  path.append(":").append(request.getServerPort()).append(request.getContextPath());
  System.out.println("***********path:" + path);
  Syste ......

XJad2.2(Java源代码反编译工具)


  XJad2.2(Java源代码反编译工具)
  立即下载
  XJad是基于Jad核心的Java源程序反编译软件,内置Jad1.5.8e2。
  XJad可处理多个*.class文件,可以处理文件夹内的所有文件,甚至可以处理*.jar文件。
  XJad带有多页面文本编辑器,反编译完成后可以直接编辑查看,编辑器支持java语法的高亮显示功能。
   ......

彻底转变流,第 2 部分:优化 Java 内部 I/O


替换字节数组流和管道流
文档选项
<tr
valign="top"><td width="8"><img alt="" height="1" width="8"
src="//www.ibm.com/i/c.gif"/></td><td width="16"><img alt="" width="16"
he ......

二叉树的java构造算法

参考网上的一些资料,自己研读了一番,用java构造了一个二叉树类,并带有测试的main方法,如有不足请大家多多指教。
/**
* 二叉树构造算法
* 二叉树定义:是度为2的有序树,它的特点是每个节点至多有两棵子树
* 我们的算法就是根据二叉树的递归定义而来,下面是二叉树的递归定义:
* n(n>=0)个节点的有限集。它 ......

java线程池技术浅析

java线程池技术浅析
为什么要用线程池?
诸如Web服务器、数据库服务器、文件服务器或邮件服务器之类的许多服务器应用程序都有面向处理来自某些远程来源的大量短小的任务。请求以某种方式到达服务器,这种方式可能是通过网络协议(例如HTTP、FTP或POP)、通过JMS队列或者可能通过轮询数据库。不管请求如何达到,服务器应用程 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号