广告
返回顶部
首页 > 资讯 > 精选 >Java复习之集合框架总结
  • 258
分享到

Java复习之集合框架总结

java集合框架ava 2023-05-31 04:05:23 258人浏览 独家记忆
摘要

俗话说:温故而知新。想想学过的知识,就算是以前学得很不错,久不用了,就会忘记,所以温习一下以前学习的知识我认为是非常有必要的。而本篇文件温习的是 Java基础中的集合框架。为什么会有集合框架?平时我们用数组存储一些基本的数据类型,或者是引用

俗话说:温故而知新。想想学过的知识,就算是以前学得很不错,久不用了,就会忘记,所以温习一下以前学习的知识我认为是非常有必要的。而本篇文件温习的是 Java基础中的集合框架

为什么会有集合框架?

平时我们用数组存储一些基本的数据类型,或者是引用数据类型,但是数组的长度是固定的,当添加的元素超过了数组的长度时,需要对数组进行重新的定义,这样就会显得写程序太麻烦,所以Java内部为了我们方便,就提供了集合类,能存储任意对象,长度是可以改变的,随着元素的增加而增加,随着元素的减少而减少。

数组可以存储基本数据类型,也可以存储引用数据类型,基本数据类型存储的是值,引用数据类型存储的是地址,而集合只能存储引用数据类型(也就是对象),其实集合中也可以存储基本数据类型,但是在存储的时候会自动装箱变成对象。

有了集合不意味着我们要抛弃数组,如果需要存储的元素个数是固定的,我们可以使用数组,而当存储的元素不固定,我们使用集合。

集合的种类

集合分为单列集合和双列集合。单列集合的根接口为Collection,双列结合的根接口为Map,两种集合都有基于哈希算法的集合类(HashMap和HashSet),现在我们可能会有疑问,到底是双列集合基于单列集合还是单列集合基于双列集合呢,下面我们来看往集合HashMap和HashSet添加元素的源码

 public V put(K key, V value) {    return putVal(hash(key), key, value, false, true);  }final V putVal(int hash, K key, V value, boolean onlyIfAbsent,          boolean evict) {    node<K,V>[] tab; Node<K,V> p; int n, i;    if ((tab = table) == null || (n = tab.length) == 0)      n = (tab = resize()).length;    if ((p = tab[i = (n - 1) & hash]) == null)      tab[i] = newNode(hash, key, value, null);    else {      Node<K,V> e; K k;      if (p.hash == hash &&        ((k = p.key) == key || (key != null && key.equals(k))))        e = p;      else if (p instanceof TreeNode)        e = ((TreeNode<K,V>)p).putTreeVal(this, tab, hash, key, value);      else {        for (int binCount = 0; ; ++binCount) {          if ((e = p.next) == null) {            p.next = newNode(hash, key, value, null);            if (binCount >= TREEIFY_THRESHOLD - 1) // -1 for 1st              treeifyBin(tab, hash);            break;          }          if (e.hash == hash &&            ((k = e.key) == key || (key != null && key.equals(k))))            break;          p = e;        }      }      if (e != null) { // existing mapping for key        V oldValue = e.value;        if (!onlyIfAbsent || oldValue == null)          e.value = value;        afterNodeAccess(e);        return oldValue;      }    }    ++modCount;    if (++size > threshold)      resize();    afterNodeInsertion(evict);    return null;  }public boolean add(E e) {    return map.put(e, PRESENT)==null;  }// PRESENT是一个Object 对象 private static final Object PRESENT = new Object();

--结束END--

本文标题: Java复习之集合框架总结

本文链接: https://www.lsjlt.com/news/223639.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Java复习之集合框架总结
    俗话说:温故而知新。想想学过的知识,就算是以前学得很不错,久不用了,就会忘记,所以温习一下以前学习的知识我认为是非常有必要的。而本篇文件温习的是 Java基础中的集合框架。为什么会有集合框架?平时我们用数组存储一些基本的数据类型,或者是引用...
    99+
    2023-05-31
    java 集合框架 ava
  • Java集合的总体框架相关知识总结
    目录一、集合概述二、集合在开发中的应用三、集合存储的数据四、集合的包五、集合的两大类一、集合概述 数组其实就是一个集合。集合实际上就是一个容器。可以来容纳其它的数据。 二、集合在开发...
    99+
    2022-11-12
  • Java框架之Maven SSM集合
    目录SSMMaven什么是mavenMaven好处,为什么要用Maven三种仓库坐标概念总结SSM @Controller,@Service本质都是@Component,作用是new...
    99+
    2022-11-12
  • Java集合框架之Map详解
    目录1、Map的实现2、HashMap 和 Hashtable 的区别3、介绍下对象的 hashCode()和equals(),使用场景4、HashMap和TreeMap应该怎么选择...
    99+
    2022-11-13
  • Java集合系列之JCF集合框架概述
    Java集合框架(Java Collections Framework,JCF)是Java平台提供的一套用于存储、操作和管理对象的集...
    99+
    2023-09-23
    java
  • Java集合框架超详细小结
    目录一:Collection集合1.1集合概述:1.2集合架构1.3Collection集合常用方法二:迭代器Iterator2.1Iterator接口2.2Iterator的实现原...
    99+
    2022-11-12
  • Python学习之集合的常用方法总结
    目录什么是集合?集合与列表的区别集合的创建方法集合的增删改add函数update函数remove函数clear函数del方法删除集合关于集合的重要说明获取两个集合交、并、差集的函数d...
    99+
    2022-11-13
  • Java基础之集合框架详解
    目录一、前言二、集合的由来?三、集合和数组的区别?四、Collection集合的功能概述?五、Collection集合存储字符串并遍历?(迭代器)六、...
    99+
    2022-11-12
  • Java 集合框架之List 的使用(附小游戏练习)
    目录1. List1.1 List 的常见方法 1.2 代码示例 2. ArrayList2.1 介绍2.2 ArrayList 的构造方法2.3 ArrayList 底层数组的大小...
    99+
    2022-11-12
  • Java常见知识点汇总(⑦)——集合框架
    一. Collection和Collections的区别Collection是集合继承结构中的顶层接口(interface),其是Iterable的子类。Collections 是提供了对集合进行操作的强大方法的工具类 ,它包含有各种有关集...
    99+
    2023-06-05
  • Java集合的总体框架有什么用
    这篇文章将为大家详细讲解有关Java集合的总体框架有什么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一、集合概述数组其实就是一个集合。集合实际上就是一个容器。可以来容纳其它的数据。二、集合在开发中的应...
    99+
    2023-06-15
  • Java集合框架之Set和Map详解
    目录Set接口HashSetTreeSetMap接口HashMapTreeMapSet接口 set接口等同于Collection接口,不过其方法的行为有更严谨的定义。set的add...
    99+
    2022-11-12
  • Java数据结构之集合框架与常用算法详解
    目录1 集合框架1.1 集合框架概念1.2 容器涉及的数据结构2 算法2.1 算法概念2.2 算法效率3 时间复杂度3.1 时间复杂度概念3.2 大O的渐进表示法3.3 推导大O阶方...
    99+
    2023-05-18
    Java集合框架 Java算法
  • Java中的集合框架:理解Java中的数据结构和集合
    文章目录 Java中的集合框架:理解Java中的数据结构和集合1. 引言2. 技术原理及概念2.1 基本概念解释2.2 技术原理介绍 3. 实现步骤与流程3.1 准备工作:环境配置与依赖...
    99+
    2023-10-04
    数据结构 java 链表
  • Java集合框架的数据结构是什么
    这篇文章主要介绍“Java集合框架的数据结构是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Java集合框架的数据结构是什么”文章能帮助大家解决问题。1、什么是集合框架?在java中,有一套现成...
    99+
    2023-06-29
  • Java集合框架概览之ArrayList源码分析
    今天小编给大家分享一下Java集合框架概览之ArrayList源码分析的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。一、从一...
    99+
    2023-07-05
  • Java基础详解之集合框架工具Collections
    目录一、Collections二、Collections中的常见方法三、Aarrays:用于对数组操作的工具类四、二分查找过程中的默认比较器五、集合转化为数组六、增强for循环七、关...
    99+
    2022-11-12
  • Java基础之MapReduce框架总结与扩展知识点
    目录一、MapTask工作机制二、MapTask工作流程:三、ReduceTask工作机制四、ReduceTask工作流程:五、数据清洗(ETL)六、计数器应用七、计数器案例八、Ma...
    99+
    2022-11-12
  • Java集合框架入门之泛型和包装类
    目录1. 预备知识-泛型(Generic)1.1 泛型的引入1.2 泛型的分类1.3 泛型类的定义1.4 泛型编译的机制2. 预备知识-包装类(Wrapper Class)2.1 基...
    99+
    2022-11-12
  • Java超详细图解集合框架的数据结构
    目录1、什么是集合框架?2、Collection接口1.通过泛型来指定相应集合中的对象类型2.Collection常见方法使用3、Map 接口Map常见方法使用4、具体的实现类1、什...
    99+
    2022-11-13
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作