复习《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()方法也类似。
相关文档:
2008 年 6 月 24 日
原文地址: http://www.ibm.com/developerworks/cn/data/library/techarticles/dm-0806wangys/
本文介绍 IBM FileNet P8 4.0 Platform 提供的 Content Java API。首先对 FileNet P8 Content Engine 和 API 进行概要介绍, 并说明了一些基本概念,随后详细介绍了 FileNet Content Engine提供的基于 EJB ......
最近公司碰到需要用图表的形式显示一些数据,我就开始到网上查询,查到了jfreechart和amcharts,这两者我都实现过了,jfreechart最后生成图片,但是图片效果不是我想要的,然后又研究amcharts 它的效果确实很好,而且官方网站上还有好些例子可供下载,网址是:www.amcharts.com
(想要完成一个amcharts图形需要swfobjects. ......
java 的去掉空格空行的例子:
String so = "haolong, hei eip, "
+"ting, " +
& ......
java线程池技术浅析
为什么要用线程池?
诸如Web服务器、数据库服务器、文件服务器或邮件服务器之类的许多服务器应用程序都有面向处理来自某些远程来源的大量短小的任务。请求以某种方式到达服务器,这种方式可能是通过网络协议(例如HTTP、FTP或POP)、通过JMS队列或者可能通过轮询数据库。不管请求如何达到,服务器应用程 ......
一般情况获得本地所有的ip地址:
try {
InetAddress address = InetAddress.getLocalHost();
System.out.println(address.getHostAddress());
String name = address.getHostName();
System.out.println(name);
InetAddress[] addresses = &nbs ......