![](https://img-blog.csdnimg.cn/20210419225936778.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
Java 基础篇
文章平均质量分 86
Java 基础知识修炼
Blare_Wang
逝者如斯夫,不舍昼夜
展开
-
Java 基础篇--基础知识之集合TreeMap
文章目录TreeMap 简介一、红黑树简单回顾1.1 红黑树规则特点1.2 红黑树自平衡基本操作二、实现原理三、源码分析3.1 继承与实现关系3.2 重要成员信息3.3 构造方法3.4 数据结构3.5 重要方法3.5.1 存储 put(K key, V value)3.5.2 读取 get(Object key)3.5.3 移除 remove(Object key)TreeMap 简介TreeMap是NavigableMap接口(SortedMap的子接口)的实现类,是一个有序的key-value集合,原创 2021-10-06 13:30:06 · 349 阅读 · 0 评论 -
Java 基础篇--基础知识之集合LinkedHashMap
文章目录LinkedHashMap 简介一、实现原理二、源码分析2.1 继承与实现关系2.2 重要成员信息2.3 构造方法2.4 数据结构2.5 重要方法2.5.1 存储put2.5.2 读取get2.5.3 移除removeLinkedHashMap 简介LinkedHashMap是HashMap的子类,每个键值对即位于哈希表中,也位于双向链表中。可以认为它是一个带链表的HashMap,组合了双向链表和哈希表,内部使用了双向链表来维护key-value键值对的次序(其实只考虑key的次序),该链原创 2021-10-06 13:29:18 · 659 阅读 · 0 评论 -
Java 基础篇--基础知识之集合HashMap
文章目录HashMap 简介一、实现原理二、源码分析2.1 继承与实现关系2.2 重要成员信息补充1:为什么capacity要保持为2的幂次方补充2:为什么默认负载因子是0.75,而不是1或0.5补充3:为什么树化阈值是8,去树化阈值是62.3 构造方法2.4 数据结构2.5 容量值【capacity】归化为2的幂方2.6 重新hash函数,起扰动效果2.7 扩容resize2.8 重要方法2.8.1 存储 put(K key, V value)2.8.2 读取 get(Object key)2.8.3 移原创 2021-10-04 21:37:56 · 237 阅读 · 0 评论 -
Java 基础篇--基础知识之集合ArrayDeque
文章目录ArrayDeque 简介一、实现原理二、源码分析2.1 继承与实现关系2.2 重要成员信息2.3 构造方法2.4 扩容机制2.5 重要方法2.5.1 双端队列方法2.5.2 单端队列方法2.5.3 堆栈方法2.5.4 重要方法ArrayDeque 简介首先在Java的集合框架中,要知道:Stack是一种先进后出的数据结构:栈;Queue是一种先进先出(First In First Out)的数据结构:队列。Deque是Queue接口的子接口,它代表一个双端队列,内部定义了一系列双端队原创 2021-09-07 13:58:44 · 380 阅读 · 0 评论 -
Java 基础篇--基础知识之集合TreeSet
文章目录TreeSet 简介一、实现原理二、源码分析2.1 继承与实现关系2.2 重要成员信息2.3 构造方法2.4 重要方法2.4.1 添加2.4.2 删除TreeSet 简介TreeSet是SortedSet接口的具体实现类,顾名思义,TreeSet可以保证集合元素处于有序状态。与HashSet相比,增加了访问第一个、前一个、后一个、最后一个元素的方法,并提供了从TreeSet中截取子TreeSet的方法。TreeSet并不是根据元素插入的顺序来排序,而是根据元素实际的值的大小来排序,其支持两种排原创 2021-09-07 13:49:50 · 373 阅读 · 0 评论 -
Java 基础篇--基础知识之集合LinkedHashSet
文章目录LinkedHashSet 简介一、实现原理二、源码分析2.1 继承与实现关系2.2 所有源码LinkedHashSet 简介HashSet可以保证元素的唯一,但不保证顺序,要保证有序需用到其子类LinkedHashSet。LinkedHashSet是根据元素的hashCode值来决定元素的存储位置,而且它同时使用双向链表维护元素的次序,这使得元素看起来是以插入顺序保存的。LinkedHashSet插入性能略低于HashSet,但迭代访问Set里的全部元素时有较好的性能;LinkedHas原创 2021-09-07 13:46:55 · 702 阅读 · 0 评论 -
Java 基础篇--基础知识之集合HashSet
文章目录HashSet 简介一、实现原理二、源码分析2.1 继承与实现关系2.2 重要成员信息2.3 构造方法2.4 重要方法2.4.1 添加2.4.2 删除三、对应线程安全实现3.1 Collections 同步方法3.2 CopyOnWriteArraySetHashSet 简介HashSet是一个没有重复元素的集合,是基于HashMap实现的,因此具有良好的存取和查找性能。但它不保证集合的迭代顺序,特别是它不保证该顺序恒久不变。HashSet具体以下特点:不保证元素的迭代顺序(HashMap原创 2021-09-01 18:19:10 · 1834 阅读 · 2 评论 -
Java 基础篇--基础知识之集合LinkedList
文章目录LinkedList 简介一、实现原理二、源码分析2.1 继承与实现关系2.2 重要成员信息2.5 重要方法2.5.1 添加2.5.2 删除2.5.3 更新2.5.4 查询2.5.5 queue相关的方法2.5.6 其他方法三、对应线程安全实现3.1 Collections 同步方法3.2 ConcurrentLinkedQueueLinkedList 简介LinkedList同时实现了List接口和Deque接口,也就是说它既可以看作一个顺序容器,又可以看作一个队列(Queue),同时也可以看原创 2021-08-03 21:29:24 · 167 阅读 · 7 评论 -
Java 基础篇--基础知识之集合ArrayList
文章目录ArrayList 简介一、实现原理二、源码分析2.1 继承与实现关系2.2 重要成员信息2.3 扩容机制2.4 快速失败(fast-fail)机制2.5 安全失败(fail-safe)2.5 重要方法2.5.1 添加2.5.2 删除2.5.3 更新2.5.4 查询2.5.5 其他常用方法三、对应线程安全实现3.1 Collections 同步方法3.2 CopyOnWriteArrayListArrayList 简介ArrayList 实现了List接口,是一个顺序(插入顺序)容器,允许存放n原创 2021-07-22 00:13:06 · 133 阅读 · 2 评论 -
Java 基础篇--基础知识之集合框架综述
目录文章目录目录集合框架综述一、简介二、框架图三、重要接口和实现类3.1 Collection接口3.1.1 List3.1.2 Set3.1.3 Queue3.1.4 Set和List的区别3.2 Map接口3.3 Iterator接口3.4 ListIterator接口3.5 RandomAccess接口集合框架综述一、简介官方教程: CollectionsJava集合框架(Java Collection Framework),又被称为集合容器(Collection Containe原创 2021-07-06 19:10:36 · 100 阅读 · 0 评论 -
Java 基础篇--基础知识之Java 关键字
Java 关键字(保留字)序号关键字名称关键字描述1byte8种java基本数据类型:字节2short8种java基本数据类型:短整型3int8种java基本数据类型:整型4long8种java基本数据类型:长整型5float8种java基本数据类型:单精度浮点型6double8种java基本数据类型:双精度浮点型7boolean8种java基本数据类型:布尔类型8char8种java基本数据类型:字符型原创 2021-07-06 00:22:58 · 124 阅读 · 0 评论 -
Java 基础篇--基础知识之字符串String
字符串 StringString内部是用final修饰,并且可序列化,可比较,不可变,不能被继承,实现了Serializable,Comparable,CharSequence接口。同时String类是通过char数组来保存字符串的,char又被final修饰,所以说字符串是常量,它们的值在创建之后不能更改。特别要注意的是,String类的所有方法都没有改变字符串本身的值,都是返回了一个新的对象。一、String的类定义public final class String implements jav原创 2021-07-06 00:22:35 · 138 阅读 · 0 评论 -
Java 基础篇--基础知识之数据类型
文章目录数据类型一、 基本数据类型1.1 布尔类1.2 数值类型1.3 字符型二、引用数据类型2.1 类2.2 接口2.3 数组三、基本数据类型和引用数据类型的区别2.1 内存方面2.2 概念方面2.3 使用方面四、基本数据类型转换4.1 自动类型转换4.2 强制类型转换数据类型数据类型在计算机语言中,是对内存位置的一个抽象表达式,可以理解为针对内存的一种抽象的表达方式。数据类型是语言的抽象原子概念,可以说是语言中最基本的单元定义,在Java中,本质上将数据类型分为两种:基本数据类型和引用数据类型。Ja原创 2021-07-06 00:21:38 · 178 阅读 · 0 评论 -
Java 基础篇之面向对象
一、 什么是面向对象1.1 类类指对共享相同的属性、操作方法、行为及关系的一组对象的描述,是创建对象的模板。示例:public class Dog { //属性 private String name; private String color; ... //操作方法 public String getName(){ return name; } public void setN...原创 2021-04-20 01:49:14 · 256 阅读 · 0 评论