`
chansybinbin
  • 浏览: 12662 次
  • 性别: Icon_minigender_2
  • 来自: 北京
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

转载java Collection用法

阅读更多
支持类集的接口如下:
Collection
List
Set
SortedSet
Comparator 定义两个对象如何比较
Iterator 枚举类集中的对象
ListIterator枚举类集中的对象
Collection接口(省略常用的方法)
Boolean add(Object obj) 添加一个Object元素
boolean addAll(Collection c)
boolean contains(Object obj) 判断obj是否是调用类集的一个元素(属于)
boolean containsAll(Collection c) 判断c是否是调用类集的子集(包含)
boolean equals(Collection c) 判断c是否与调用类集相等
int hashCode() 返回调用类集的hash码
Iterator iterator() 返回调用类集的迭代程序
boolean removeAll(Collection c) 从调用类集中去掉所有c中包含的元素(差集)
boolean retainAll(Collection c) 从调用类集中去掉包含在c中以外的元素(补集)
Object[] toArray() 返回类集的元素组成的数组

Void clear()
boolean isEmpty()
int size()
类集包含一个add(Object obj)方法,因此可以包含任意Object数据,但是不能直接存储:int,char,Double等数据。可以使用下面的方法实现:
ArrayList a=new ArrayList();
a.add(new Integer(1));
a.add(new Integer(2));
……

当类集不能被修改时,可能引发 UnsupportedOperationException异常。企图将一个不兼容的对象加入到一个类集中时可能引发ClassCastException异常。

List接口(从Collection继承而来,使用基于0的下标)
void add(int index,Object obj) 插入点以后的元素将后移
boolean addAll(int index,Collection c) 如果调用列表改变了,返回true,否则返回false
Object get(int index)
int indexOf(Object obj) 返回obj对象在列表中的索引,不存在返回-1
int lastIndexOf(Object obj) 返回obj在列表中的最后一个实例的下标,不存在返回-1
ListIterator listIterator()
ListIterator listIterator(int index) 返回index开始的迭代程序
Object set(int index,Object obj) 对列表index处的值进行修改
List subList(int start,int end) 从start到end-1


Set接口(从Collection派生,没有定义新的方法)
Set不允许有重复的元素。
对Set调用add(Object obj)方法,如果obj已经存在集合中,将返回false。

SortedSet接口
Comparator comparator() 返回调用排序集合的比较函数,如果改集合使用自然顺序,则返回null
Object first() 返回被排序集合的第一个元素
SortedSet headSet(Object end) 返回一个包含小于end元素的SortedSet
Object last() 返回调用排序集合的最后一个元素
SortedSet subSet(Object start,Object end) 包括从start到end-1
SortedSet tailSet(Object start) 返回包含大于等于start的元素


ArrayList扩展AstractList类,并执行List接口。ArrayList支持动态长度的数组。
LinkList扩展了AbstractSequentialList,执行List接口。提供连接列表。
HashSet扩展AbstractSet实现Set接口,元素没有顺序。对于大集合提供常量级基本操作。
TreeSet使用树来存储的Set,对象按升序存储。访问和检索非常快。

iterator实现Iterator接口或者ListIterator接口。
Iterator接口
boolean hasNext()
Object next() 如果没有下一个元素则引发NoSuchElementException异常。
void remove() 删除当前元素,如果试图在调用next()方法后调用remove()方法则引发IllegalStateException异常。



ListIterator接口
void add(Object obj) 将一个元素插入到当前元素之前,调用next()方法将返回该元素。
boolean hasNext()
boolean hasPrevious()
Object next() 如果不存在引发NoSuchElementException
int nextIndex() 如果不存在返回列表的大小
void remove()
void set(Object obj) 修改当前元素

public void test1() {
ArrayList al = new ArrayList();
for (int i = 1; i < 10; i++) {
al.add("ArrayList Element:" + i);
}
Iterator itr = al.listIterator();
while (itr.hasNext()) {
Object obj = itr.next();
System.out.println(obj);
}
}

public void test2() {
HashSet hs = new HashSet();
System.out.println("HashSet");
for (int i = 1; i < 10; i++) {
hs.add("HashSet Element:" + i);
}
Iterator itr = hs.iterator();
while (itr.hasNext()) {
Object obj = itr.next();
System.out.println(obj);
}
}

public void test3() {
TreeSet ts = new TreeSet();
System.out.println("TreeSet");
for (int i = 1; i < 10; i++) {
ts.add("TreeSet Element:" + i);
}
Iterator itr = ts.iterator();
while (itr.hasNext()) {
Object obj = itr.next();
System.out.println(obj);
}
}

public void test4()
{
HashMap hm=new HashMap();
for ( int i=0;i<10;i++)
{
hm.put("item"+i,"value"+i);
}

Set set=hm.entrySet();
Iterator itr=set.iterator();
while (itr.hasNext())
{
Map.Entry me=(Map.Entry)itr.next();
System.out.println(me.getKey()+";"+me.getValue());
}

hm.put("item5","modifyed value");
System.out.println(hm.get("item5") );

set=hm.entrySet();
itr=set.iterator();
while (itr.hasNext())
{
Map.Entry me=(Map.Entry)itr.next();
System.out.println(me.getKey()+";"+me.getValue());
}

}
分享到:
评论

相关推荐

    8.javaCollection接口.zip

    8.javaCollection接口.zip8.javaCollection接口.zip8.javaCollection接口.zip8.javaCollection接口.zip8.javaCollection接口.zip8.javaCollection接口.zip8.javaCollection接口.zip8.javaCollection接口.zip8.java...

    java collection framework

    对于 JDK 1.1 用户,本书还讨论了如何使用 Java Collection Framework 的子集。此外,还介绍了一种名为 JGL (Java Generic Library) 的第三方库,该库在 Java Collection Framework 出现之前就已经存在,并且提供了...

    java Collection类整理

    Java集合框架中的`Collection`接口是所有单值容器的基础接口,它定义了基本的增删查改元素的方法。`Collection`有两个主要的子接口:`List`和`Set`。`List`接口要求元素保持特定的顺序,并允许重复元素;而`Set`接口...

    java collection

    它不是有序的,因此遍历顺序可能与插入顺序不同,除非使用了特定的构造函数或方法。HashMap同样不是线程安全的,如果需要在多线程环境中使用,可以考虑使用ConcurrentHashMap。 LinkedList是List接口的一个实现,它...

    java泛型集合 java集合 集合 java Collection

    一种是使用`Collections.sort()`方法,它适用于`List`接口的实现,如`ArrayList`。例如: ```java List&lt;Integer&gt; numbers = new ArrayList(); // 添加元素... Collections.sort(numbers); ``` 另一种是通过实现`...

    关于Java_Collection_API_

    ### Java Collection API 关键知识点详解 #### 一、线程安全集合类 在Java的Collection框架中,集合类被划分为两大类:线程安全集合类...正确理解和使用Java Collection API,对于编写高效、健壮的Java程序至关重要。

    Java集合Collection、List、Set、Map使用详解

    本文将深入解析Java集合中的Collection、List、Set和Map,包括它们的使用方法、实现原理以及如何进行排序。 ### 集合框架概述 1.1.1 容器简介 容器是Java集合框架的基础,它是一个可以存储多个对象的容器,提供了...

    JAVA COLLECTION (APress)

    《JAVA COLLECTION》是一本专注于Java集合框架的书籍,由APress出版社出版。这本书深入浅出地探讨了Java API中的各种数据结构,是学习和理解Java集合框架的理想资源。作者通过简洁明了的语言,使得初学者也能轻松...

    Java.util.Collection类的学习.pdf

    Java.util.Collection类是Java编程语言中的一个基础类库,提供了许多有用的方法来操作集合对象。Collection类包含了许多静态方法,可以对集合进行排序、混排、反转、替换等操作。 1. Overview Java.util....

    Java Collection 移除元素方法及注意事项

    Java Collection 移除元素方法及注意事项 ...从 Java Collection 中删除元素有多种方法,包括使用 for 循环、迭代器、Collection.removeIf()、Stream 等。每种方法都有其优缺点,我们需要根据实际情况选择合适的方法。

    java集合框架之Collection实例解析

    此外,`List`接口中的`add(E e)`、`remove(Object o)`、`get(int index)`等方法以及`Set`接口中的`add(E e)`、`remove(Object o)`、`contains(Object o)`等方法,都是你在编程中经常使用的。学习这些接口和实现类的...

    java 中List使用方法

    ### Java中List使用方法详述 #### List接口及其特性 在Java编程中,`List`接口作为`java.util`包的一部分,是集合框架的核心组成部分之一。`List`接口继承自`Collection`接口,这意味着它继承了`Collection`的所有...

    "Java集合总结之Collection整体框架"用到的图片

    "Java集合总结之Collection整体框架"用到的图片

    各种类型的collection结构java 实现

    在Java编程语言中,集合(Collection)框架是用于存储和操作对象的重要部分。这个框架提供了多种数据结构,如栈(Stack)、队列(Queue)、表(List)和包(Set),来满足不同的需求。让我们深入探讨一下这些集合...

    java Collection&Map

    Java集合框架是Java编程语言中一个非常重要的组成部分,它提供了数据结构和算法的抽象,使得开发者可以方便地存储和管理对象。在这个框架中,Collection和Map接口及其实现类扮演着核心角色。 1. **Collection接口**...

    VB中Collection的使用方法

    本文将深入探讨VB中Collection的使用方法,包括如何创建、添加元素、删除元素以及访问和遍历集合。 ### Collection的创建 在VB中,我们可以使用`New`关键字来创建一个新的Collection对象。例如: ```vb Dim ...

    Java Collection集合遍历运行代码实例

    Java Collection 集合遍历运行代码实例 Java Collection 集合遍历是 Java 语言中最常用的数据结构之一。Collection 是 Java 集合框架...在学习 Java 语言时,了解 Collection 集合遍历的机制和使用方法是非常重要的。

    java中Collection深入剖析

    本篇文章将深入剖析Java中的`Collection`框架,探讨其核心概念、主要接口及其实现类,以及在实际开发中如何有效地使用这些工具。 首先,我们来看`Collection`接口。它定义了集合的基本操作,如添加元素(`add()`)...

Global site tag (gtag.js) - Google Analytics