zoukankan      html  css  js  c++  java
  • 自学JAVA-10:集合

    集合特点:元素类型可以不同、集合长度可变、空间不固定。

    java中对一些数据结构和算法进行了封装即集合。集合也是一种对象,用于存储、检索、操作和传输的对象。

    JCF(java Collection Framework)集合框架

    集合和数组的区别:
    ①数组创建后,长度不可改变,集合长度会随着元素增加,自动变长。
    ②数组的元素只能存放单一数据类型,集合中的元素可以存放不同类型。
    ③集合中只能存放对象的引用。而数组中,可以存放基本类型,也可以存放引用类型数据。
    ④集合的算法比数组更加丰富。

    集合的API结构:
    Collection是List和Set的父类接口,另外还有一个Map接口。
    List:线性,元素可以重复。
    Set:元素不可以重复。
    Map:键值对。一个元素可以存放两个对象,其中键值对不可以重复。

    遍历集合的方式:for循环方式、迭代器方式、for each方式(常用)

    标准的javaBean的规范:
    ①必须提供公有的无参构造方法。
    ②私有属性,通过get/set方法,对属性进行访问和修改。
    ③需要实现序列化接口。

    求长度:
    数组:length属性
    字符串:length()方法
    集合:size()方法

    List集合有三个常用的实现类:
    ①ArrayList:底层部分使用数组实现。遍历速度快,中间插入删除元素速度慢,线程不安全。
    ②Vextor:底层部分同样使用数组实现。线程安全的类。
    ③LinkedList:采用双向链表实现。元素的空间不连续,每个元素除了存放数据以外,还要存放上一个和下一个元素的地址,遍历速度慢,中间插入删除元素速度快。

    HashMap和HashTable的区别和联系:
    ①HashMap和HashTable都是Map接口的实现类,一个元素可以放两个对象。
    ②HashMap允许存放空键和空值,而HashTable不允许存放空键和空值。
    ③HashMap线程不安全,而HashTable线程安全。

  • 相关阅读:
    内核随记(三)同步(1)
    排列算法
    SQLite入门与分析(八)存储模型(3)
    内核随记(一)——理解中断(2)
    dup与dup2系统调用
    内核随记(四)文件系统(1)
    SQLite入门与分析(八)存储模型(2)
    SQLite入门与分析(九)VACUUM命令分析
    c中static变量局部变量
    (i++)+(i++)与(++i)+(++i)
  • 原文地址:https://www.cnblogs.com/LYL6868/p/8907076.html
Copyright © 2011-2022 走看看