zoukankan      html  css  js  c++  java
  • 集合类

    集合类的概述

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

    集合类接口的常用方法

    List接口的常用方法

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

    如图:

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

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

    List集合中可以包含重复的对象,若要获取重复对象第一次出现的索引位置可以使用indexOf()方法,要获取重复对象最后一次出现的索引位置可以使用lastindexOf()方法。

    上课讲义:

    package array;
    import java.util.*;
    public class Test1 {
    
        public static void main(String[] args) {
            // TODO 自动生成的方法存根
    
            //创建List
            //1.指明数据类型,不需要指定大小
            //<> 表示泛型
            List<String>list=new ArrayList<String>();
            
            List<Object>list1=new ArrayList<Object>();
            //泛型区别
            list1.add(1);
            list.add("");
            
            
            
            //添加元素
            list.add("a"); 
            list.add("b");
            list.add("c");
            //长度   size();
            System.out.println("list长度="+list.size());//尺寸
            //取出元素   get();
            System.out.println("按索引0取出get(0)="+list.get(0));
            System.out.println("按索引1取出get(1)="+list.get(1));
            System.out.println("按索引2取出get(2)="+list.get(2));
            //遍历元素
              //方法一
            for(int i=0;i<list.size();i++)
            {
                System.out.print(list.get(i)+" ");
            }
            System.out.println("遍历方式二");
              //方法二
            for(String s:list)
            {
                System.out.print(s+" ");
            }
            System.out.println();
              //方法三  迭代器
                //获取集合的迭代器,迭代器一开始是在集合的最上面
                    //泛型
            Iterator<String> it=list.iterator();
            //先判断看看有内有内容(试探)
            while(it.hasNext())
            {
                //取出
                String t=it.next();
                //如果t=b  移除
                if(t.equals("b"))
                {
                it.remove();
                }
                System.out.println("迭代器="+t);
            }
    //        //移除
    ////        list.clear();//全部移除  
    ////        System.out.println(list.size());  
    //        list.remove(0);//单个移除
    //        System.out.println("单个移除后长度="+list.size());
    //        System.out.println("按索引0取出get(0)="+list.get(0));
    //        System.out.println("按索引1取出get(1)="+list.get(1));
    //        for(String s:list)
    //        {
    //            System.out.print(s+" ");
    //        }
    //        System.out.println();
    //        //插入
    //        System.out.println("0索引插入A后");
    //        list.add(0, "A");
    //        for(String s:list)
    //        {
    //            System.out.print(s+" ");
    //        }
    //        //修改
    //        System.out.println();
    //        System.out.println("输入索引,修改");
    //        list.set(1, "B");
    //        list.set(2, "C");
    //        for(String s:list)
    //        {
    //            System.out.print(s+" ");
    //        }
    //        //查找字符串
    //        System.out.println();
    //        System.out.println("B的位置="+list.indexOf("B"));
            
            
            
            
        }
    
    }
    上课讲义:

    迭代器:

    大纲:

    迭代器的创建和使用:

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

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

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

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

  • 相关阅读:
    8月30日图雄网站隆重推出三维地图服务系统!!!
    电子地图真的是百花齐放了——百度地图即将发布
    GIS应对新挑战——空间信息网格技术探寻
    C盘和其他盘中间有恢复分区,C盘无法扩展的解决办法之一
    osg绘制ifc工字钢的端面
    protobuf编译
    osg绘图的形式
    colors
    SpeechSynthesisUtterance
    kinova jaco2 控制机械臂动作
  • 原文地址:https://www.cnblogs.com/panyiquan/p/5263574.html
Copyright © 2011-2022 走看看