• 集合类


    集合类概述

    Java语言的java.util包中提供了一些集合类,这些集合类又被称为容器。提到容器不难会想到数组集合类与数组的不同之处是,数组的长度是固定的,集合的长度是可变的;数组用来存放基本类型的数据,集合用来存放对象的引用。常用的集合有List集合、Set集合、Map集合,其中List与Set实现了Collection接口。个借口还提供了不痛的实现类。上述集合类的继承关系如图:

    集合类接口的常用方法

     Collection接口是层次结构中的根接口。构成Collection的单位,被称之为元素。Collection接口通常不能直接使用,但该接口提供了添加和删除元素、管理数据的方法。由于List接口与Set接口都实现了Collection接口,因此这些方法对List集合与Set集合是通用的。

    List接口的常用方法

    List接口继承了Collection接口,因此包含Collection中的所有方法。又因为List是列表类型,以List接口还提供了一些适合于自身的常用方法,如图:

    可以看出,List接口中适合于自身的方法都与索引有关。由于List集合以线性方式存储对象,因此可以通过对象的索引来操作对象。

    在List集合的众多方法中,add(int intdex,Object obj)方法与set(int index,Object obj)方法不容易区分。

    List集合中可以包含重复的对象,若要获取重复对象第一次出现的索引位置可以使用indexOf()方法,想要获取重复对象最后一次出现的索引位置,可以使用lastIndexOf()方法。使用indexOf()与lastIndexOf()方法时,如果指定的对象在List集合中只有一个,则通过这两个方法获得的索引位置是相同的。

    package org.hanqi.array;
    
    import java.util.*; 
    
    public class Test1 {
    
        public static void main(String[] args) {
            
            
            //创建List
            //1.指明数据类型,不需要指定大小
            //<>表示泛型
            
            List<String> list=new ArrayList<String>();
            
            ArrayList<Object>list1=new ArrayList<Object>();
            
            list1.add(1);
            
            list1.add(9);
            
            list.add("");
            
            
            
            
            
            
            
            //添加
            list.add("a");
            list.add("b");
            list.add("c");
            
            //长度
            System.out.println("List长度="+list.size());
            
            //取出
            System.out.println("按索引0取出get(0)="+list.get(0));
            
            System.out.println("遍历方式1");
            
            //遍历
            for(int i=0;i<list.size();i++)
            {
                System.out.println(list.get(i));
            }
            
            
            list.remove(0);//部分移除(移除指定的)
            
            System.out.println("遍历方式2");
            
            for(String s:list)
            {
                System.out.println(s);
            }
            
            
            System.out.println("遍历方式3:迭代器");
            
            //获取集合的迭代器,迭代器一开始是在集合的最上面
            Iterator<String> it=list.iterator();
            
            //试探
            while(it.hasNext())
            {
                String t=it.next();
                
                if(t.equals("b"))
                {
                it.remove();
                }
                
                System.out.println("迭代器="+t);
            }
            
            
            //移除
            //list.clear();全部移除
            
            
            
            System.out.println("List长度="+list.size());
            
            
            //插入
            list.add(0, "A");
            
            for(String s:list)
            {
                System.out.println(s);
            }
            
            
            //修改
            list.set(1, "B");
            //list.set(2, "C");
            for(String s:list)
            {
                System.out.println(s);
            }
            
            
            System.out.println("B="+list.indexOf("B"));
    
        }
    
    }
    List

    迭代器

    迭代器的创建和使用:

    利用Iterator接口创建迭代器,Iterator借口位于java.util包下。Iterator接口中有3种方法。

    ***hasNext();如果仍有元素可以迭代,则返回true。

    ***next();返回迭代的下一个元素。

    ***remove();从迭代器指向的collection中移除迭代器返回的最后一个元素(可选操作)。

  • 相关阅读:
    python3内置函数大全
    字符串格式化及函数
    基础数据和编码
    python基本数据类型
    python基础
    python re模块
    python json模块
    python os模块
    python random模块
    python time模块
  • 原文地址:https://www.cnblogs.com/cycanfly/p/5263429.html
Copyright © 2020-2023  润新知