Java进阶:【集合】认识集合了解简单语法 迭代器原理分析

Java进阶:【集合】认识集合了解简单语法 迭代器原理分析,第1张

Java进阶:【集合】认识集合了解简单语法 迭代器原理分析 集合前言

数组,集合都是对多个数据进行存储 *** 作,简称为容器

PS:这里的存储是内存层面的存储,而不是持久化存储

数组:只能存放同一种类型的数据

,长度无法更改,只能放同一种类型的数据

一旦指定了长度,那么长度就被确定,不可以更改,删除增加效率低,无法直接判断数组的实际元素的数量,需要我们自己去写,存储为有序,可重复。

如何解决数组的缺点?

用于解决数组缺点的新的存数的数据结构—>集合

什么是集合

我们有很多集合,为什么要学习这么多集合,应为不容的集合底层的数据机构不一样

将集合分为两种类型

存储方式:

一个一个数据的存储

一对一对数据的存数

colletion接口

特点:不唯一,有序

  • 新增:add(E e)
  • 修改:
  • 删除:remove(Object o),clear()
  • 查看:iterator(),size()
  • 判断:contains(Object o),equals(Object o),isEmpty()


    public static void main(String[] args) {
        //接口不能创建对象:利用实现类创建
        Collection col = new ArrayList();
//        集合有一个特点,只能存放引用数据类型,不能是基本数据类型,
//        基本数据类型自动装箱,对应包装类
        col.add(18);
        col.add(12);
        col.add(15);
        System.out.println(col);
        List list = Arrays.asList(new Integer[]{2,1,3,4,5});
        col.addAll(list);
        System.out.println(col);
        col.clear();
        System.out.println(col);
        System.out.println("集合的数量:"+col.size());
        System.out.println("集合是否为空:"+col.isEmpty());
        boolean remove = col.remove(15);
        System.out.println(col);
        System.out.println("是否删除成功:"+remove);

        Collection col2 = new ArrayList();
//        集合有一个特点,只能存放引用数据类型,不能是基本数据类型,
//        基本数据类型自动装箱,对应包装类
        col2.add(18);
        col2.add(12);
        col2.add(15);

        Collection col3 = new ArrayList();
//        集合有一个特点,只能存放引用数据类型,不能是基本数据类型,
//        基本数据类型自动装箱,对应包装类
        col3.add(18);
        col3.add(12);
        col3.add(15);
        System.out.println(col2.equals(col3));

集合有一个特点,只能存放引用数据类型,不能是基本数据类型,那我们为什么加入基本类型没有报错?
解:基本数据类型自动装箱,对应包装类

遍历的两种方式
  1. ​ 增强for循环

            for (Object o : col) {
                System.out.println(o);
            }
    
  2. ​ 迭代器

            Iterator it = col.iterator();
            while (it.hasNext()){
                System.out.println(it.next());
            }
    

    迭代器简略原理:

list接口

list接口常用方法:

list接口的常用方法

  • 增加:add(E e),
  • 删除:clear(),remove(int index), remove(Object o)
  • 修改:set(int index, E element)
  • 查看:get(int index),size()
  • 判断:
        List list = new ArrayList();
        list.add(12);
        list.add(5);
        list.add(-1);
        list.add(19);
        list.add(2);
        list.add("abc");
        System.out.println(list);
        list.add(3,14);
        System.out.println(list);
        list.set(3,77);
        System.out.println(list);
        list.remove(2); //调用这个方法参数为integer的时候,调用的是参数为index的remove方法,按照喜爱表删除
        System.out.println(list);
        list.remove("abc");
        System.out.println(list);

        Object o = list.get(0);
        System.out.println(o);
        System.out.println("-----------");
//        遍历list集合,普通for循环
        for (int i = 0; i  

以上就是常用方法外加迭代的是那种遍历方式

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5611620.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-15
下一篇 2022-12-15

发表评论

登录后才能评论

评论列表(0条)

保存