Java类集

在整个Java类集中最常使用的类集接口是:Collection、List、Set、Map、Iterator、ListIterator、Enumeration、SortedSet、SortedMap、Queue、Map.Entry。

Collection接口

Collection接口的定义如下:

public interface Collection<E> extends Iterable<E>

从接口的定义中可以发现,此接口使用了泛型的定义,在操作时必须指定具体的操作类型。这样可以保证类集操作的安全性,避免发生ClassCastException异常。

在一般的开发中,往往很少直接使用Collection接口进行开发,基本上都是使用其子接口。子接口主要有List、Set、Queue和SortedSet。

List接口

List是Collection的子接口,其中可以保存各个重复的内容。此接口定义如下:

public interface List<E> extends Collection<E>

但是与Collection不同的是,在List接口中大量地扩充了Collection接口,拥有了比Collection接口中更多的方法定义,其中有些方法还比较常用。

public void add(int index, E element)

E get(int index)

......

List接口的常用子类

ArrayList

ArrayList是List子类,可以直接通过对象的多态性为List接口实例化,此类的定义:

public calss ArrayList<E> extends AbstractList<E>

implements List<E>,RandomAccess,Cloneable,Serializable

(1) 实例操作一:向集合中增加元素

向集合中增加元素
1 package com.yuchao.collection;
2
3 import java.util.ArrayList;
4 import java.util.Collection;
5 import java.util.List;
6
7 public class ArrayListDemo {
8
9 /**
10 * @param args
11 */
12 public static void main(String[] args) {
13 // TODO Auto-generated method stub
14 List<String> allList=null;
15 Collection<String> allCollection=null;
16 allList=new ArrayList<String>();
17 allCollection=new ArrayList<String>();
18 allList.add("Hello");
19 allList.add(0,"World");
20 System.out.println(allList);
21 allCollection.add("YUCHAO");
22 allCollection.add("www.baidu.con");
23 allList.addAll(allCollection);
24 allList.addAll(0,allCollection);
25 System.out.println(allList);
26
27 }
28
29 }

(2) 实例二:删除元素

删除元素
1 package com.yuchao.collection;
2
3 import java.util.ArrayList;
4 import java.util.Collection;
5 import java.util.List;
6
7 public class ArrayListDemo {
8
9 /**
10 * @param args
11 */
12 public static void main(String[] args) {
13 // TODO Auto-generated method stub
14 List<String> allList=null;
15 Collection<String> allCollection=null;
16 allList=new ArrayList<String>();
17 allCollection=new ArrayList<String>();
18 allList.add("Hello");
19 allList.add(0,"World");
20 System.out.println(allList);
21 allCollection.add("YUCHAO");
22 allCollection.add("www.baidu.con");
23 allList.addAll(allCollection);
24 allList.addAll(0,allCollection);
25 System.out.println(allList);
26
27 }
28
29 }

(3) 实例操作三:输出List中的内容

输出全部元素
1 package com.yuchao.collection;
2
3 import java.util.ArrayList;
4 import java.util.List;
5
6 public class ArrayListDemo {
7
8 /**
9 * @param args
10 */
11 public static void main(String[] args) {
12 // TODO Auto-generated method stub
13 List<String> allList=null;
14 allList=new ArrayList<String>();
15 allList.add("Hello");
16 allList.add(0,"World");
17 allList.add("YUCHAO");
18 allList.add("www.baidu.com");
19 for(int i=0;i<allList.size();i++)
20 {
21 if(i!=allList.size()-1)
22 {
23 System.out.print(allList.get(i)+"");
24 }
25 else
26 {
27 System.out.print(allList.get(i));
28 }
29 }
30 }
31
32 }

(4) 实例操作四:将集合变为对象数组

将集合变为对象数组
1 package com.yuchao.collection;
2
3 import java.util.ArrayList;
4 import java.util.List;
5
6 public class ArrayListDemo {
7
8 /**
9 * @param args
10 */
11 public static void main(String[] args) {
12 // TODO Auto-generated method stub
13 List<String> allList=null;
14 allList=new ArrayList<String>();
15 allList.add("Hello");
16 allList.add(0,"World");
17 allList.add("YUCHAO");
18 allList.add("www.baidu.com");
19 String[] str=allList.toArray(new String[]{});
20 Object[] objects=allList.toArray();
21
22 System.out.print("指定数组类型:");
23 for(int i=0;i<str.length;i++)
24 {
25 if(i!=str.length-1)
26 {
27 System.out.print(str[i]+"");
28 }
29 else
30 {
31 System.out.print(str[i]);
32 }
33 }
34
35 System.out.println();
36 System.out.print("返回对象数组:");
37 for(int i=0;i<objects.length;i++)
38 {
39 if(i!=objects.length-1)
40 {
41 System.out.print((String)objects[i]+"");
42 }
43 else
44 {
45 System.out.print((String)objects[i]);
46 }
47
48
49 }
50 }
51
52 }

posted on 2011-02-26 12:21  弱弱的风  阅读(259)  评论(0编辑  收藏  举报

导航