zoukankan      html  css  js  c++  java
  • Java中常用集合操作

    一、Map 名值对存储的。 常用派生类HashMap类

    添加:

    put(key,value)往集合里添加数据

    删除:

    clear()删除所有

    remove(key)清除单个,根据k来找

    获取:

    size()获取元素的数量

    get(key)根据key获取该数据

    containsKey(key)根据key查找集合中有没有该内容,有返回true ,没有返回false

    containsValue(value)根据value查找集合中有没有改内容,有返回true,没有返回false

        public static void main(String[] args){
            Map map = new HashMap();
            map.put(1, "一");
            map.put(2, "二");
            map.put(3, "三");
            map.put(4, "四");
            
            map.remove(1);     //根据key删除
            System.out.println("有"+map.size()+"个元素");
            System.out.println(map.get(4)); //根据key查找
            System.out.println(map.containsKey(1));
            System.out.println(map.containsValue("二"));

    强类型集合

    <>中加入类型,前后要对应

    Map<Tkey,Tvalue> map = new HashMap<Tkey,Tvalue>();

    二、List 用索引号存储的,派生类ArrayListLinkedList

    添加:

    add (obj)

    删除:

    clear()删除所有

    remove(int)根据索引号移除

    remove(obj)根据内容移除

    获取:

    size()获取元素的数量

    get(int)根据索引号获取指定元素

    contains(obj)查找集合里有没有该数据源,有返回trus,没有返回false

    遍历:

    1.List可以直接for循环使用索引号遍历集合

    for (int i = 0; i < list.size(); i++) {

       System.out.println(list.get(i));

    }

    2.还可以使用迭代器来遍历

    迭代器(Iterator)

      迭代器是一种设计模式,它是一个对象,它可以遍历并选择序列中的对象,而开发人员不需要了解该序列的底层结构。迭代器通常被称为“轻量级”对象,因为创建它的代价小。

      Java中的Iterator功能比较简单,并且只能单向移动:

      (1) 使用方法iterator()要求容器返回一个Iterator。第一次调用Iterator的next()方法时,它返回序列的第一个元素。注意:iterator()方法是java.lang.Iterable接口,被Collection继承。

      (2) 使用next()获得序列中的下一个元素。

      (3) 使用hasNext()检查序列中是否还有元素。

      (4) 使用remove()将迭代器新返回的元素删除。

      Iterator是Java迭代器最简单的实现,为List设计的ListIterator具有更多的功能,它可以从两个方向遍历List,也可以从List中插入和删除元素。

      ArrayList <String> list=new ArrayList<>();
            list.add("jackie");   //索引为0  //.add(e)添加元素
            list.add("peter");    //索引为1
            list.add("annie");    //索引为2
            list.add("martin");   //索引为3
            list.add("marry");    //索引为4
            
            System.out.println("一共有"+list.size()+"个元素");//.size()查询一共有多少个元素
            list.remove(3);        //.remove(index) 根据索引号删除
            list.remove("marry");     //.remove(Object o)  根据内容删除
            System.out.println(list.contains("martin")); //.contains(obj)查询集合中是否有这个元素
            
            System.out.println("索引号为2的是:"+list.get(2));    //.get(index)根据索引号查找
            System.out.println("一共有"+list.size()+"个元素");
            //用for循环遍历
            for (int i = 0; i < list.size(); i++) {
                System.out.println(list.get(i));  //for循环使用索引号遍历list
            }
         //用迭代器遍历
         Iterator it = list.iterator(); //造一个迭代器
         while(it.hasNext()){        //.hasNext()检查序列中是否还有元素
            object obj =  it.next(); //.next()获得序列中的下一个元素
             System.out.println(obj);
         }

    强类型集合

    <>中加入类型,前后要对应

    List<T> list = new ArrayList<T>();

  • 相关阅读:
    python序列(五)切片操作
    python序列(四)成员资格判断
    python序列(三)列表元素访问与计数
    python序列(二)列表的删除操作
    Lua调用自定义C++类
    TexturePacker的使用方法
    随笔—邀请赛前练— Codeforces Round #329 (Div. 2) 2Char
    随笔—邀请赛前练— Codeforces Round #328 (Div. 2) B. The Monster and the Squirrel
    随笔—邀请赛前训—Codeforces Round #328 (Div. 2) A. PawnChess
    随笔—邀请赛前训—Codeforces Round #327 (Div. 2) Rebranding
  • 原文地址:https://www.cnblogs.com/hq233/p/6243205.html
Copyright © 2011-2022 走看看