zoukankan      html  css  js  c++  java
  • java--集合

    集合特点:

    1.元素类型可以不同。

    2.集合长度可变。

    3.空间不固定。

     

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

      

      JFC(Java Collections FrameWork)集合框架,提供了用于管理集合的接口和类

    集合框架包括三个内容:接口、实现类、算法

    接口:  collection是list和set的父接口。其中list的特点是:线性、元素可以重复。set的特点是:元素不可以重复。

    Map集合:     一个元素包含两个对象(键对象和值对象),键不能重复。

    集合和数组的区别:

    1.集合中只能存放对象的引用,数组可以是基本类型也可以是引用类型。

    2.集合的长度可以随着元素的多少发生变化,数组创建好后,长度不能变化。

    3.集合算法比较丰富,可以省去开发者很多编码,但数组算法有限。

    遍历的方式:

    1.for循环遍历,只能用于list集合。

    2.迭代器方式,得到迭代器的算法和接口。   iterator

    3.for each方式

    迭代器方式,得到迭代器算法接口

      Itertor<Student> it=stu.itertor();

      while(it.hasNext){

      Student s=is.Next();

    }

    list三个实现类的区别:

    ArrayList:底层部分由数组实现,遍历速度快,中间插入删除速度慢。

    Vector:和ArrayList类似,底层也由数组实现,但他是线程安全的类,效率较低。

    LinkedList:采用双向链表实现,是不连续的内存空间,每个元素除了存放数据外,还要存放上一个和下一个元素的地址,中间插入删除熟速度快,遍历速度慢。

    set集合实现类的区别:

    HashSet:将元素按Hash码排列,        Set <> set=new HashSet<>();

    LinkedHashSet:将元素按加入顺序排列。
    TreeSet:可以将元素按制定规则排列。

    Map集合:

    向集合中添加元素,Map.put(键,值);   根据键对象找到值对象,Student s=map.get(键);----->找不到,返回null;

    遍历:

    Set<String > set=map.keySet();

    for(String key:set){//      打印         }

    根据键.对象移除元素      map.remove(键);

    Map集合实现类的区别:

    HashMap:元素按键对象的Hash码排列。线程不安全,允许null键和null值;

    HashTable:元素按键对象的Hash码排列。线程安全,不允许null键和null值;

    TreeMap:元素按键对象的指定规则排列。

    collections:算法类,主要针对List集合。

    倒序:collections.reverse(list);

    乱序:collections.shuffle(list);

    指定规则排序:collections.sorf(list,new comparator<>()){      }

    排序:      comparator                算法:collections

  • 相关阅读:
    界这么大,Python 也想去看看 -- pyecharts的安装和使用
    Mybatis开发笔记
    Spring入门笔记
    Maven基础
    树莓派的20个常用命令
    树莓派CPU、GPU、磁盘、内存、负载监控Python脚本
    在Winform开发框架中使用DevExpress的TreeList和TreeListLookupEdit控件
    ABP开发框架前后端开发系列---(14)基于Winform的ABP快速开发框架
    ABP开发框架前后端开发系列---(13)高级查询功能及界面的处理
    ABP开发框架前后端开发系列---(12)配置模块的管理
  • 原文地址:https://www.cnblogs.com/JackieADBM/p/5440925.html
Copyright © 2011-2022 走看看