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

Java基本:集合


原文:http://zhaosoft.javaeye.com/blog/243586
Java
基本概念:集合类(Collection
) List
/Set/Map  的区别和联系
Collection
:List
、Set
Map:HashMap、HashTable
如何在它们之间选择
一、Array , Arrays
Java
所有“存储及随机访问一连串对象”的做法,array是最有效率的一种。
1、效率高,但容量固定且无法动态改变。
array还有一个缺点是,无法判断其中实际存有多少元素,length只是告诉我们array的容量。
2、Java
中有一个Arrays类,专门用来操作array。
    arrays中拥有一组static函数,equals():比较两个array是否相等。array拥有相同元素个数,且所有对应元素两两相等。
fill():将值填入array中。
sort():用来对array进行排序。
binarySearch():在排好序的array中寻找元素。
System.arraycopy():array的复制。
二、Collection
, Map
若撰写程序时不知道究竟需要多少对象,需要在空间不足时自动扩增容量,则需要使用容器类库,array不适用。
1、Collection
和 Map 的区别
容器内每个为之所存储的元素个数不同。
Collection
类型者,每个位置只有一个元素。
Map类型者,持有 key-value pair,像个小型数据库。
2、各自旗下的子类关系
Collection
    --List
:将以特定次序存储元素。所以取出来的顺序可能和放入顺序不同。
          --ArrayList / LinkedList / Vector
    --Set : 不能含有重复的元素
          --HashSet / TreeSet
Map
    --HashMap
    --HashTable
    --TreeMap
3、其他特征
* List
,Set,Map将持有对象一律视为Object型别。
* Collection
、List
、Set、Map都是接口,不能实例化。
   继承自它们的 ArrayList, Vector, HashTable, HashMap是具象class,这些才可被实例化。
* vector容器确切知道它所持有的对象隶属什么型别。vector不进行边界检查。
三、Collections
Collections是针对集合类的一个帮助类。提供了一系列静态方法实现对各种集合的搜索、排序、线程完全化等操作。
相当于对Array进行类似操作的类——Arrays。
如,Collections.max(Collection
coll); 取coll中最大的元素。
   


相关文档:

JAVA参数传递值传递的理解。

首先明确一下:java里面只有值传递,引用传递只是一只误读而已。
来看一个例子:
public static void main(String[] args)
{
StringBuffer str1 = new StringBuffer("hello");
test(str1);
System.out.println("main : " + str1);
}
public static void test(StringBuffer s ......

所有学java网址

http://edu.itfuture.org/index.jsp  程序员之家
www.8isp.com
www.wang48.com  
www.topsage.com  大家网
www.cnsd.com     
http://www.jpeixun.com   / 时代骏晟
http://bbs.langsin.com/forum-9-3.html  浪曦网
www.123w.net 
w ......

Java栈与堆的思考(转载)

1. 栈(stack)与堆(heap)都是Java用来在Ram中存放数据的地方。与C++不同,Java自动管理栈和堆,程序员不能直接地设置栈或堆。 2. 栈的优势是,存取速度比堆要快,仅次于直接位于CPU中的寄存器。但缺点是,存在栈中的数据大小与生存期必须是确定的,缺乏灵活性。另外,栈数据可以共享,详见第3点。堆的优势是可以动态地分配内 ......

Java中AWT、Swing与SWT三大GUI技术的原理与效率差异

MineHe原创
看了一下对Java GUI讨论的帖子,所以写了一篇文章来阐述一下各种GUI技术的优劣。
Java世界中,目前最知名的三大GUI库分别是:
1、AWT(Abstract Window Toolkit)抽象窗口工具包库,包含于所有的Java SDK中
2、Swing高级图形库,包含于Java2 SDK中
3、来自IBM Eclipse开源项目的SWT(Standard Widget Toolk ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号