美文网首页
Java--容器介绍

Java--容器介绍

作者: _Raye | 来源:发表于2016-12-20 20:00 被阅读0次

容器(集合框架):

  • 容器:承载其他对象的对象

  • 父类接口:Collection

  • 子类接口:List、Set

  • 实现List接口的常用类:
    1.ArrayList
    底层实现是一个数组,使用连续内存,可以实现随机存取
    2.LinkedList
    底层实现是一个双向循环链表,可以使用碎片内存,不能随机存取,但是增删元素只需要修改引用即可,所以增删元素时有更好的性能。

  • 容器里放的是对象类型的引用,放不了基本数据类型
    所以想容器中添加基本数据类型时会自动装箱(auto-boxing)
    自动装箱:就是将基本数据类型处理成对应的包装类型

基本类型 ---> 包装类型
byte ---> Byte
short ---> Short
int ---> Integer
long ---> Long
float ---> Float
double ---> Double
char ---> Character
boolean ---> Boolean

public static void main(String[] args) {
        Object object1 = 100;//自动装箱
        System.out.println(object1.getClass());
        Integer object2 = (Integer) object1;
        int a = object2;//自动拆箱
        int b = (Integer) object1;
        System.out.println(a);
        System.out.println(b);
        
        List<Integer> list = new ArrayList<>();
        for (int i = 0; i < 10; i++) {
            //自动装箱int ---> Integer对象
            list.add((int) (Math.random() * 20));
        }
        for (Integer x : list) {
            //自动拆箱(auto-unboxing)Integer对象--->int
            if (x > 10) {
                System.out.println(x);
            }
        }
    }
  • 泛型参数:
    从Java 5开始容器可以指定泛型参数来限定容器中对象引用的类型
    从Java 7开始,构造器后面的泛型参数可以省略 - 钻石语法
    List<String> list = new ArrayList<>();

  • 容器的遍历:
    1.for-each

list.forEach(System.out::println);

forEach方法的参数可以是方法引用也可以是Lambda表达式

list.forEach(e -> {
            System.out.println(e.toUpperCase());
        });

2.for循环

for (int i = 0; i < list.size(); i++) {
            System.out.println(list.get(i));
        }

3.迭代器(Iterator)

Iterator<String> iterator = list.iterator();
        while(iterator.hasNext()){
            System.out.println(iterator.next());
        }
  • 容器中的一些方法
    1.添加
    list.add("apple");
    2.根据指定参考系删除所有
    list.removeAll(temp);
    3.根据指定的参考系保留所有
    list.retainAll(temp);
    4.清空
    list.clear();

相关文章

  • Java--容器介绍

    容器(集合框架): 容器:承载其他对象的对象 父类接口:Collection 子类接口:List、Set 实现Li...

  • 容器介绍

      容器其实是一种沙盒技术。沙盒就是能够像一个集装箱一样,把你的应用"装"起来的技术。这样,应用与应用之间,就因为...

  • Java--容器中使用泛型

      容器相关类都定义了泛型,我们在开发和工作中,在使用容器类时都要使用泛型。这样,在容器的存储数据、读取数据时都避...

  • 音视频开发之旅(22) STL 之 容器

    目录 STL的六大部件介绍 容器分类 序列式容器介绍(vector、list、deque) 关联式容器 资料 收获...

  • Eclipse 开发基本配置与快捷键

    自动提示Window -->> Preferences -->> Java-->> Editor-->> Cont...

  • 容器镜像介绍

    1 Dockerfile   将应用打包成镜像前,需要先创建一个Dockerfile的文件,其包含了一系列构建镜像...

  • 视频容器介绍

    原文地址:https://alphahinex.github.io/2020/03/12/video-contai...

  • 容器简单介绍

    c++中经常会用到各种容器,需要对容器的数据结构或者算法有基本理解,在适当的时候以选用适当的容器,以增强性能 容器...

  • Eclipse自动补全

    Windows——>Preferences——>Java-->Editor-->Content Asist,在Au...

  • 1. Docker介绍

    1 Docker介绍 1.1 Docker介绍 1.1.1 容器历史 早期的容器基于Linux的LXC工作. 可以...

网友评论

      本文标题:Java--容器介绍

      本文链接:https://www.haomeiwen.com/subject/eddfvttx.html