java.util.Set接口及其子类,set提供的是一个无序的集合;
java.util.List接口及其子类,List提供的是一个有序的集合;
java.util.Map接口及其子类,Map提供了一个映射(对应)关系的集合数据结构;
Set是最简单的一种集合,它的对象不按特定方式排序,只是简单的把对象加入集合中,就像往口袋里放东西。对集中成员的访问和操作是通过集中对象的引用进行的,所以集中不能有重复对象;而LIst的主要特征是其对象以线性方式存储,没有特定顺序,只有一个开头和一个结尾,当然,它与根本没有顺序的集是不同的。
列表在数据结构中分别表现为:数组和向量、链表、堆栈、队列。关于实现列表的集合类,是我们日常工作中经常用到的;从类图中可以看到,Set 和List都是继承了Collection接口的子接口,而这类集合都有自己的实现;
Boolean add(E o) : | 向集合中加入一个对象,如果集中己有这个对象,则返回false; |
Boolean addAll(Collection<? extends E> c) | 将另外一个集合中的所有对象加入这个集合 |
void clear() | 清除集合中的所有对象,执行过后,集合中不在装有对象 |
boolean contains(Object o) | 判断集合是是否存在某个对象 |
boolean containsAll(Collection<?> c) | 判断集合中是否全部存在另外一个集合中的对象 |
boolean equals(Object o) |
int hashCode() | 可重写的来自父类的方法 |
boolean isEmpty() | 判断集合是否为空,在执行clear()后调用这个方法,返回true |
Iterator<E> iterator() | 得到这个集合的一个迭代对象 |
boolean remove(Object o) | 从集合中移除掉一个对象 |
int size() | 返回集合内元素的个数 |
Object[] toArray() | 将集合转变一个数组对象 |
①Set是一个接口定义,所以我们只能使用它的实现子类,Set接口常用的子类有java.util.HashSet、java.util. TreeSet;
//遍历:
while(it.hasNext()){
A a=it.next();
a.showInfo();
}
//A代表一个类,a是一个对象,showInfo()是一个自己写的输出函数
②List了类除了实现Collection中的方法外,还有如下几个特有的方法:
boolean addAll(int index, Collection<? extends E> c) | 向一个List列表中插入一个对象 ,index必须小与getSize()返回的值。 |
E get(int index) | 取得list列表中指定位置的一个对象,如果index值大与getSize()返回的值,调用将抛出异常。 |
//遍历:
for(int i=0;i<list.size();i++){
A a=list.get(i);;
a.showInfo();
}//同上
③Map是一个接口,有多种具体的实现类,常用的有HashMap和Hashtable类实现。Map中存入的对象是一对一对的,即每个对象和它的一个名字(键)关联在一起,Map中数据存放的结构如下图示:
[img]Key(键或名) Value(key对应的值)
“userName1” UserInfo对象1
“userName1” UserInfo对象1
“userName1” UserInfo对象1
[/img]
Map中的键不能重复,但值可以重复。Map接口中定义了如下常用方法:
V put(K key, V value)
向Map中放入一对有关联关系的对象,如果Map中己有与Key关联的对象,则返回那个对象(原对象被新放入的对象替代),否则返回Null;参数前的K和V分别代表了放入的键和值泛型的类型。
void putAll(Map<? extends K,? extends V> t) | 将另外一个Map中的键和值加入到Map中 |
V get(Object key) | 从Map中返回与参数Key相关联的value对象 |
boolean containsKey(Object key) | 判断Map的Key中是否存在某指定Key对象 |
boolean containsValue(Object value) | 判断Map的value中是否存在value对象 |
V remove(Object key) | 从Map中移除key对应的value |
int size() | 得到Map中Entry的个数,即Map中有多少对对象。 |
Set<K> keySet() | 将Map中所有的key对象放入一个Set返回 |
Collection<V> values() | 将Map中所有Value对象做为一个Collection返回 |
//迭代key
while(it.hasNext()){
String key=it.next();
A a=m.get(key);
a.showInfo();
}//m是一个Map对象
④Map中不可以放入null的key,但可以有null的Value。Set和List中可以有努力啦的value。
分享到:
相关推荐
// java中对象容器主要有Set,List和Map三个接口类。 // 迭代器(Iterator)模式,又叫做游标(Cursor)模式。 // GOF给出的定义为:提供一种方法访问一个容器(container)对象中的各个元素, // 而又不需暴露该...
本篇文章将详细介绍如何将Map和List集合转换为XML字符串,以及如何将XML字符串反向转换回Map和List集合。 首先,让我们探讨`Map`集合转成XML字符串的过程。一个`Map`对象存储键值对,可以使用各种库如`JAXB (Java ...
### 集合概述:set、List、Map #### 一、集合框架概述 ##### 1.1.1 容器简介 在Java编程中,集合框架是一个非常重要的概念,它提供了一种灵活的方式来存储、操作和管理不同类型的对象集合。集合框架的主要目标是...
在Java编程语言中,集合框架是处理对象的重要工具,其中包括Set、List和Map三大接口。这些接口提供了多种数据结构和操作方法,使得开发者能够高效地组织和管理数据。 1. **Set接口**: Set接口表示一个不包含重复...
### set、list、map的区别与联系 #### 一、概述 在Java编程语言中,`set`、`list`和`map`是非常重要的数据结构,它们分别代表了不同的集合类型,各自有着独特的特性与用途。 - **List**:有序集合,可以包含重复...
Java 集合框架中 List、Set、Map 的用法和区别 Java 集合框架(Java Collections Framework)是 Java 语言中的一个重要组件,提供了一些基本的数据结构和算法来操作和存储数据。其中,List、Set、Map 是三个非常...
在Java编程语言中,集合框架是处理对象组的重要工具,主要包括`List`、`Set`和`Map`接口。这些接口及其实现类提供了丰富的功能,适用于各种数据存储和操作需求。`Set-List-Map.rar_DEMO_list set map`这个压缩包文件...
本文将深入探讨如何使用Java来操作Redis,包括设置和获取String、List和Map类型的数据,并且会介绍如何进行封装和单元测试。 首先,要与Redis进行交互,我们需要引入Jedis库,这是Java最常用的Redis客户端。在你的...
根据提供的标题、描述、标签及部分内容,我们可以详细探讨在Java中如何实现`List`、`Set`、`Map`以及数组之间的相互转换。这是一项在实际编程中非常实用且常见的需求,尤其对于处理数据结构变换时极为重要。 ### 1....
详细描述map、list、set的常用子类特性,各个场景的适用。
java集合类list-set-map.doc
### Java中List、Set和Map的区别 在Java编程语言中,`List`、`Set`和`Map`是集合框架中的三个核心接口,它们分别代表了不同类型的集合数据结构,各自有着独特的特性和应用场景。 #### List `List`接口是最常用的...
根据给定文件的信息,我们可以详细地探讨一下Java中几种主要的集合容器——List、Set以及Map的区别,并且深入了解它们各自的特性和应用场景。 ### 一、List #### 1. ArrayList - **特点**:`ArrayList`是基于动态...
测试报告与总结\list,set,map,数组间的相互转换.rar测试报告与总结\list,set,map,数组间的相互转换.rar测试报告与总结\list,set,map,数组间的相互转换.rar测试报告与总结\list,set,map,数组间的相互转换.rar
在Java编程语言中,集合框架提供了多种数据结构来存储和操作数据,其中最常用的是`Set`、`Map`和`List`。这三种集合类型各自具有独特的特性和用途,理解它们之间的区别与联系对于有效地使用Java进行数据管理至关重要...
在Java编程语言中,集合框架是处理对象组的重要工具,主要包括List、Set和Map三大接口。这些接口由Java Collection Framework提供,它是一个统一的架构,用于存储和操作各种类型的对象。接下来,我们将深入探讨这三...
### Set,List,Map 的区别与应用 在 Java 编程语言中,集合框架是一个非常重要的概念,它提供了存储和操作对象的方式。集合框架主要包括三种类型的集合:`Set`、`List` 和 `Map`。这三种集合各自拥有独特的特性和...
自己写的例子,Java连接 redis 测试了string,list set ,map类型,以及中文测试,都正常,资源解释:http://www.cnblogs.com/aspirant/p/6816180.html
### List、Map、Set 的核心概念与特性 #### 一、List **List** 是 Java 集合框架中最常用的数据结构之一,它允许元素重复并保持元素的插入顺序。 - **特点**: - 元素有放入顺序,元素可重复。 - 提供了对元素...
Collection, List, Set 和 Map 用法和区别 Collection 是 Java 中的一种对象集合,提供了许多有用的方法来操作集合元素,例如添加、删除、遍历等。Collection 是一个接口,下面有两个子接口:List 和 Set。 List ...