zoukankan      html  css  js  c++  java
  • Collection集合框架

    数组的特点:

      1.长度一旦被定义,不允许被改变

      2.在内存中开辟连续的空间

      3.便于查询,但是插入和删除麻烦

    集合框架  父接口Collection

    public interface List<E> extends Collection<E> 

    public interface Set<E> extends Collection<E> 

    public interface Map<K,V> 

      Vector  线程安全,但是性能低

      List    存储的都是不唯一、有序(插入顺序)的数据!

      Set     存储的都是唯一、无序的数据!

      Map

        List接口常用的实现类

        01.ArrayList  底层就是一个动态数组,自动扩充!

          新增和删除的效率低!遍历数据快!

        02.LinkedList   底层就是一个链表

          新增和删除的效率高!遍历数据慢!

        Set接口常用的实现类

        01.HashSet  散列表

          001.add新增数据

          002.其实是使用了map.put()

          003.map.put(key.value)决定了key是唯一的

        两个数据如果内容一致,hash值肯定一样!

        两个数据如果hash值一样,内容可能不一致!

          001.比较hash

          002.比较内存地址

          03.equals比较内容

        02.TreeSet  树型结构  自带排序

          只有实现Comparable接口的类才能被排序!

        Map  单独的接口

        01.HashMap

          001.Iterator  所有集合中都有一个Iterator,用来遍历集合中的数据!

            hasNext() 判断集合中是否存在下一个元素  返回时boolean

            next() 获取集合中下一个元素

            remove() 删除元素

        02.TreeMap

        03.HashTable

          001.HashMap 线程不安全,但是性能高

            HashTable 线程安全,但是性能低

          002.HashTable 从1.0版本就已经开始使用

            HashMap  从1.2版本才已经开始使用

          003.HashMap 底层局势hash表来实现的 key和value都可以是null

            HashTable key和value都不可以是null

    Collections

      一些方法来操作集合类!

  • 相关阅读:
    RepositoryItemComboBox 用法1
    php 直接获取url参数赋值成变量。省去繁琐的获取参数,再一个个赋值
    什么是经验,就是解决问题的能力!!
    win7 上运行 php7 +
    win2008 server 多IP配置
    mysqlli 的基本用法
    PHP操作mongoDB 笔记
    关于PHP程序员技术职业生涯规划 转自 韩天锋
    linux 简单笔记
    ubantu 重启mysql
  • 原文地址:https://www.cnblogs.com/dongfengpo/p/8073143.html
Copyright © 2011-2022 走看看