Java集合框架学习



集合接口:6个接口(短虚线表示),表示不同集合类型,是集合框架的基础。

Collection List Set Map Iterator ListIterator

抽象类:5个抽象类(长虚线表示),对集合接口的部分实现。可扩展为自定义集合类。
实现类:8个实现类(实线表示),对接口的具体实现。

ArrayList LinkedList HashSet LinkedHashSet TreeSet HashMap TreeMap

 

1. Collection接口

增加,删除 boolean add/reomve(Obj) boolean clear()

查询 int size(), boolean is empty(), boolean contains(Obj), Iterator iterator()

转换 Obj toArray()

 

1.1 List接口

void add(int index, Obj element)

Obj get(int index)

int indexOf(Obj element)

int lastIndexOf(Obj element)

Obj remove(int index)

Obj set(int index, Obj element) 返回旧元素

List subList(int fromIndex, int toIndex)

 

1.1.1 LinkedList类(常用做堆栈)

void addFirst(Obj element), Void addLast(Obj element)

Obj getFirst(), Obj getLast()

Obj removeFirst(), Obj removeLast()

LinkedList(Collection c)

 

1.1.2 ArrayList类

int size()

boolean isEmpty

boolean remove(Obj element)

boolean contains(Obj element)

Obj[] toArray()

其余同List

 

1.2 Set接口

boolean add(element Obj)

boolean contains(element Obj)

boolean remove(element Obj)

Obj[] toArray()

 

1.2.1 HashSet/TreeSet类

HashSet(Collection c) TreeSet(Collection c)

 

 

2. Map接口

增加,删除 Obj put(Obj key, Obj value), Obj remove(Obj key), void clear()

查询 int size(), boolean is empty(), Obj get(Obj key), boolean containsKey(Obj key), boolean containsValue(Obj value)

视图操作 Set keySet(), Collection values(), Set entrySet() 返回Map.Entry对象集

             Map.Entry 接口 Obj getValue(); Obj getKey()

 

2.1 HashMap/TreeMap类

 

3. Iterator接口

boolean hasNext(); Obj next(); void remove()

3.1 ListIterator 接口

增加,修改 void add(Obj)增加到当前光标之前,可用previous访问

                void set(Obj)代替光标之前的元素

                void remove()

查询 boolean hasPrevious(); Obj previous(); boolean hasNext(); Obj next()

 

package example;
import java.util.*;

public class TestCollection {
	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		ArrayList dateList = new ArrayList();
		dateList.add(new Date());
		dateList.add(new Date());
		Iterator dateIterator=dateList.iterator();
		while(dateIterator.hasNext()){
			System.out.println(dateIterator.next());
		}
		LinkedList testList = new LinkedList(dateList);
		testList.addFirst("first");
		testList.addLast("first");
		testList.add(3,"last");
		dateIterator=testList.iterator();
		while(dateIterator.hasNext()){
			System.out.println(dateIterator.next());
		}

	}

}
 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值