• java中三大集合框架


     

    一、List集合

    1、List实现的超级父类接口:Collection

          存储一组不唯一(允许重复),有序的对象。

    2、了解ArrayList类

    A):定义的格式:ArrayList<具体类型> 集合名 =  new ArrayList<具体类型>();

    B):数据的存储方式:底层还是用数组存储

    C):对象的类型:在List集合中,如果定义集合对象时没有定义定义对象的类型,就表示什么类型的对象都可以直接存储到List集合中,如果想要运用里面的元素,则需要用instanceof来判断元素的类型。格式 :元素 instanceof 所判断的类型;返回true或false。后续需要强转。

    D):集合的设计:泛型的方式进行类型指定,ArrayList<具体类型>

                    特点:元素有序、可重复,可变大小的容器

    遍历:for循环即可

    E):基本操作:

    增加:集合名.add(元素); 加在集合最后,

    集合名.add(数字,元素); 加载指定的位置

    集合名.addAll(另一个集合名);  加在最后

    集合名.addAll(数字,另一个集合名);   加载指定位置

            删除:集合名.remove(数字);   移去指定位置的元素

              集合名.remove(元素);   移去集合中第一次出现的指定元素(如果存在)

    集合名.removeALL(另一个集合名);  移去另一个集合中的所有元素

    集合名.retaintALL(另一个集合名);   仅保留另一个集合中的所有元素

    集合名.clear();  清空集合

       判断/获得:集合名.get(数字);   获得指定位置的元素

                  集合名.contains(元素);   判断集合是否包含该元素,是则返回true

                  集合名.contains(另一个集合名); 判断是否包含另一个集合的所有元素

                  集合名.indexOf(元素);   返回该元素的索引,无则返回-1

                  集合名.equals(元素); 判断该元素是否与集合的元素一致  返回true或false

              改:集合名.set(数字,元素); 用该元素替换指定位置的元素

            其它:集合名.size(); 获取集合的大小

               

    二、Set集合

    1、Set实现的超级父类接口:Collection

    2、了解HashSet类

    A):定义的格式:  HashSet<具体类型> 集合名 =  HashSet<具体类型>();

    B):数据的存储方式:遵循Hash算法来存储数据

    C):对象的类型:必须要定义集合对象类型,否则会影响后续的使用

    D):集合的设计:泛型的方式进行类型指定:HashSet<具体类型>

    特点:元素无序、不可重复,可变大小的容器

    注意:底层并非真正的无序,遵循Hash算法来保证数据的存储,但是我们作为使用者,就理解为无序

    遍历:需要使用迭代器:Iterator<类型> 名称 = 集合名.iterator();

    E):基本操作:

    增加:集合名.add(元素);   添加指定元素(之前集合不过包含的)

    删除:集合名.remove(元素);  移去指定的元素

          集合名.clear();    清空集合

    判断:集合名.containts(元素);  如果集合包含此元素,返回true

    其它:集合名.size();   获得集合的大小

                  Iterator<类型> 名称 = 集合名.iterator();  用于集合的遍历

    三、Map集合

    1、Map没有实现的超级父类接口,不是Collection的直接接口子类

    2、了解HashMap类

    A):定义的格式:HashMap<类型,类型> 集合名 = new HashMap<类型,类型>();

    B):数据的存储方法:key+value的存储方式

    C):对象的类型:必须要定义集合对象类型,否则会影响后续的使用

    D)集合的设计:泛型的方式进行类型的指定:HashMap<具体类型>

                          特点:一条数据,是由两部分组成:键和值,元素无序、不可重复, 可变大小的容器

          遍历:需要使用键的迭代器   Set<类型> 名称1 = 集合名.keySet();

    Iterator<类型> 名称 = 名称1.iterator();

    E):基本操作

    增加:集合名.put(键,值);  在此映射中关联指定值与指定键(是put,不是add)

    删除:集合名.remove(键);  从映射中移除指定键的映射关系(如果存在)

    判断:集合名.containsKey(键);  如果此映射包含对于指定键的映射关系,返回true

      集合名.containsValue(值); 如果此映射将一个或多个键映射到指定值,返回true

    其它:集合名.size();  获得集合的大小

    注意:在Map集合中,一个键只能对应有一个值,但一个值可以有多个键对应,如果说放(put)了一个相同的键到map中,则新元素会替换原来的元素,会把替换掉的元素返回出来,你可以接收到,并做后续处理

  • 相关阅读:
    How to change hostname on SLE
    How to install starDIct on suse OS?
    python logging usage
    How to reset password for unknow root
    How to use wget ?
    How to only capute sub-matched character by grep
    How to inspect who is caller of func and who is the class of instance
    How to use groovy script on jenkins
    Vim ide for shell development
    linux高性能服务器编程 (二) --IP协议详解
  • 原文地址:https://www.cnblogs.com/www-yang-com/p/9054663.html
Copyright © 2020-2023  润新知