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线程安全。

  • 相关阅读:
    前端十万个为什么(之一):我们为什么需要npm?
    初识模块化开发工具:
    javascript 中的 let 作用域
    把汉字转换为html实体编码
    【小程序】开发过程问题整理
    【入门】正则表达式
    【CSS】面试知识整理
    【入门】Gulp 简单使用
    【入门】WebSocket 示例
    【JQ】$.ajax() 参数
  • 原文地址:https://www.cnblogs.com/LYL6868/p/8907076.html
Copyright © 2011-2022 走看看