`
梅蒙毅澎
  • 浏览: 40056 次
  • 性别: Icon_minigender_1
  • 来自: 莱州
文章分类
社区版块
存档分类
最新评论

SET/LIST/MAP

阅读更多
        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的使用方法实例

    // java中对象容器主要有Set,List和Map三个接口类。 // 迭代器(Iterator)模式,又叫做游标(Cursor)模式。 // GOF给出的定义为:提供一种方法访问一个容器(container)对象中的各个元素, // 而又不需暴露该...

    map/list集合转化成xml字符串 xml字符串转化成map/list集合

    本篇文章将详细介绍如何将Map和List集合转换为XML字符串,以及如何将XML字符串反向转换回Map和List集合。 首先,让我们探讨`Map`集合转成XML字符串的过程。一个`Map`对象存储键值对,可以使用各种库如`JAXB (Java ...

    集合概述set、List、Map

    ### 集合概述:set、List、Map #### 一、集合框架概述 ##### 1.1.1 容器简介 在Java编程中,集合框架是一个非常重要的概念,它提供了一种灵活的方式来存储、操作和管理不同类型的对象集合。集合框架的主要目标是...

    set.list.map接口

    在Java编程语言中,集合框架是处理对象的重要工具,其中包括Set、List和Map三大接口。这些接口提供了多种数据结构和操作方法,使得开发者能够高效地组织和管理数据。 1. **Set接口**: Set接口表示一个不包含重复...

    set,list,map区别与联系

    ### set、list、map的区别与联系 #### 一、概述 在Java编程语言中,`set`、`list`和`map`是非常重要的数据结构,它们分别代表了不同的集合类型,各自有着独特的特性与用途。 - **List**:有序集合,可以包含重复...

    List,set,Map 的用法和区别

    Java 集合框架中 List、Set、Map 的用法和区别 Java 集合框架(Java Collections Framework)是 Java 语言中的一个重要组件,提供了一些基本的数据结构和算法来操作和存储数据。其中,List、Set、Map 是三个非常...

    Set-List-Map.rar_DEMO_list set map

    在Java编程语言中,集合框架是处理对象组的重要工具,主要包括`List`、`Set`和`Map`接口。这些接口及其实现类提供了丰富的功能,适用于各种数据存储和操作需求。`Set-List-Map.rar_DEMO_list set map`这个压缩包文件...

    Java操作Redis,实现String、List、Map的set和get

    本文将深入探讨如何使用Java来操作Redis,包括设置和获取String、List和Map类型的数据,并且会介绍如何进行封装和单元测试。 首先,要与Redis进行交互,我们需要引入Jedis库,这是Java最常用的Redis客户端。在你的...

    list,set,map,数组间的相互转换

    根据提供的标题、描述、标签及部分内容,我们可以详细探讨在Java中如何实现`List`、`Set`、`Map`以及数组之间的相互转换。这是一项在实际编程中非常实用且常见的需求,尤其对于处理数据结构变换时极为重要。 ### 1....

    JAVA集合map、list、set详解

    详细描述map、list、set的常用子类特性,各个场景的适用。

    java集合类list-set-map.doc

    java集合类list-set-map.doc

    java中list、set和map 的区别

    ### Java中List、Set和Map的区别 在Java编程语言中,`List`、`Set`和`Map`是集合框架中的三个核心接口,它们分别代表了不同类型的集合数据结构,各自有着独特的特性和应用场景。 #### List `List`接口是最常用的...

    List set map集合容器的区别

    根据给定文件的信息,我们可以详细地探讨一下Java中几种主要的集合容器——List、Set以及Map的区别,并且深入了解它们各自的特性和应用场景。 ### 一、List #### 1. ArrayList - **特点**:`ArrayList`是基于动态...

    测试报告与总结\list,set,map,数组间的相互转换

    测试报告与总结\list,set,map,数组间的相互转换.rar测试报告与总结\list,set,map,数组间的相互转换.rar测试报告与总结\list,set,map,数组间的相互转换.rar测试报告与总结\list,set,map,数组间的相互转换.rar

    java中三种集合set、map、list的区别与联系

    在Java编程语言中,集合框架提供了多种数据结构来存储和操作数据,其中最常用的是`Set`、`Map`和`List`。这三种集合类型各自具有独特的特性和用途,理解它们之间的区别与联系对于有效地使用Java进行数据管理至关重要...

    Java_Collection_List-Set-Map.zip_list set map

    在Java编程语言中,集合框架是处理对象组的重要工具,主要包括List、Set和Map三大接口。这些接口由Java Collection Framework提供,它是一个统一的架构,用于存储和操作各种类型的对象。接下来,我们将深入探讨这三...

    Set,List,Map的区别

    ### Set,List,Map 的区别与应用 在 Java 编程语言中,集合框架是一个非常重要的概念,它提供了存储和操作对象的方式。集合框架主要包括三种类型的集合:`Set`、`List` 和 `Map`。这三种集合各自拥有独特的特性和...

    Redis java连接 list,string set map

    自己写的例子,Java连接 redis 测试了string,list set ,map类型,以及中文测试,都正常,资源解释:http://www.cnblogs.com/aspirant/p/6816180.html

    list map set区别

    ### List、Map、Set 的核心概念与特性 #### 一、List **List** 是 Java 集合框架中最常用的数据结构之一,它允许元素重复并保持元素的插入顺序。 - **特点**: - 元素有放入顺序,元素可重复。 - 提供了对元素...

    Collection,List,Set和_Map用法和区别

    Collection, List, Set 和 Map 用法和区别 Collection 是 Java 中的一种对象集合,提供了许多有用的方法来操作集合元素,例如添加、删除、遍历等。Collection 是一个接口,下面有两个子接口:List 和 Set。 List ...

Global site tag (gtag.js) - Google Analytics