Java集合框架详解


数据结构定义:

是以某种形式将数据组合在一起的集合。数据结构不仅保存数据,还支持访问和处理数据的操作。在面向对象思想里,一种数据结构也被认为是一个容器(container),它是一个能存储其他对象的对象。

Java集合框架:

在Java中,数据结构通常称为Java集合框架(Java Collection Framework)。

Java框架支持的两种容器:

一种是为了存储一个元素集合,一般称为集合(collection)

另一种是为了存储键/值对(key/value),称为图(map)

根接口:Collection

Collection接口是处理对象集合的根接口。我们知道,接口下面有很多方法,而Collection的派生类既完成这些方法,也相应添加和自己相关操作的方法。Collection接口的方法如下:

boolean add(o:E) //添加元素
boolean addAll(c:Collection<? extends E>) //将集合c中的所有元素添加给这个集合
void clear(); //删除
boolean contains(o:Object)//若集合包含包含元素o则返回ture
boolean containsAll(c:Collection<?>) //包含c中所有的元素
boolean equals(o:Object)  //集合间是否相等
void hasCode()//散列码
boolean isEmpty() //集合不包含任何元素
Interator<E> iterator()//集合中元素迭代器
boolean remove(o:Object)//删除元素o
boolean removeAll(c:Colection<?>)//从集合中删除c中的所有元素
boolean retainAll(c:Colection<?>)//保留c和该集合都有的元素,相当于两个集合求交集
int size() //返回大小
Object[] toArray() //返回该集合的元素构成的数组Object

从图中可以看出,在Collection集合中,有三种不同类型的集合,分别为Set(规则集),List(线性表),Queue(队列)

1 Set(规则集)

大体注意几点:首先,规则集是没有重复的元素的,其次,从Set派生的具体类有:散列类(HasSet),链式散列集(LinkedHashSet)和树形集TreeSet。

其中HasSet(散列集)因其没有特定的顺序,所以其输出时没有固定顺序的,如下程序输出的时候并不按照调用add的顺序输出的。

package gibbon.collection.set;

import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;

public class TestHashSet {
 public static void main(String[] args){
  Set<String> set = new HashSet<String>();
  set.add("Beijing");
  set.add("Shanghai");
  set.add("Guangzhou");
  set.add("Shenzhen");
  set.add("Beijing");
 
  System.out.println(set);
 
  Iterator<String> iterator = set.iterator();
 
  while(iterator.hasNext()){
   System.out.println(iterator.next().toUpperCase() + " ");
  }
 }
}

输出如下:

[Shenzhen, Guangzhou, Shanghai, Beijing]
SHENZHEN
GUANGZHOU
SHANGHAI
BEIJING

更多详情见请继续阅读下一页的精彩内容

推荐阅读:

Java类类型的存储特点

Java中两种单例模式小结

单例模式(Singleton Pattern)

Java单例模式实例---读取配置文件

Java单例模式(Singleton)

  • 1
  • 2
  • 3
  • 下一页

相关内容

    暂无相关文章