【Java 集合】HashSet & HashMap
【Java 集合】HashSet & HashMapMetadatatitle: 【Java 集合】HashSet & HashMap
date: 2022-12-14 14:26
tags:
- 行动阶段/完成
- 主题场景/编程
- 笔记空间/KnowladgeSpace/ProgramSpace/BasicsSpace
- 细化主题/Java/集合
categories:
- Java
keywords:
- Java/集合
description: HashSet & HashMap
Java7 HashMap概述之所以把HashSet和HashMap放在一起讲解,是因为二者在Java里有着相同的实现,前者仅仅是对后者做了一层包装,也就是说HashSet里面有一个HashMap(适配器模式)。因此本文将重点分析HashMap。
HashMap实现了Map接口,即允许放入key为null的元素,也允许插入value为null的元素;除该类未实现同步外,其余跟Hashtable大致相同;跟TreeMap不同,该容器不保证元素顺序,根 ...
【Java 集合】PriorityQueue
【Java 集合】PriorityQueueMetadatatitle: 【Java 集合】PriorityQueue
date: 2022-12-14 14:25
tags:
- 行动阶段/完成
- 主题场景/编程
- 笔记空间/KnowladgeSpace/ProgramSpace/BasicsSpace
- 细化主题/Java/集合
categories:
- Java
keywords:
- Java/集合
description: PriorityQueue
概述前面以Java ArrayDeque为例讲解了Stack和Queue,其实还有一种特殊的队列叫做PriorityQueue,即优先队列。优先队列的作用是能保证每次取出的元素都是队列中权值最小的(Java的优先队列每次取最小元素,C++的优先队列每次取最大元素)。这里牵涉到了大小关系,元素大小的评判可以通过元素本身的自然顺序(natural ordering),也可以通过构造时传入的比较器(Comparator,类似于C++的仿函数)。
Java中PriorityQueue实现了Queue接口 ...
【Java 集合】PriorityQueue
【Java 集合】PriorityQueueMetadatatitle: 【Java 集合】PriorityQueue
date: 2022-12-14 14:25
tags:
- 行动阶段/完成
- 主题场景/编程
- 笔记空间/KnowladgeSpace/ProgramSpace/BasicsSpace
- 细化主题/Java/集合
categories:
- Java
keywords:
- Java/集合
description: PriorityQueue
概述前面以Java ArrayDeque为例讲解了Stack和Queue,其实还有一种特殊的队列叫做PriorityQueue,即优先队列。优先队列的作用是能保证每次取出的元素都是队列中权值最小的(Java的优先队列每次取最小元素,C++的优先队列每次取最大元素)。这里牵涉到了大小关系,元素大小的评判可以通过元素本身的自然顺序(natural ordering),也可以通过构造时传入的比较器(Comparator,类似于C++的仿函数)。
Java中PriorityQueue实现了Queue接口 ...
【Java 集合】 Stack&Queue
【Java 集合】 Stack&QueueMetadatatitle: 【Java 集合】 Stack&Queue
date: 2022-12-14 14:24
tags:
- 行动阶段/完成
- 主题场景/编程
- 笔记空间/KnowladgeSpace/ProgramSpace/BasicsSpace
- 细化主题/Java/集合
categories:
- Java
keywords:
- Java/集合
description: Stack&Queue
Stack & Queue概述Java里有一个叫做Stack的类,却没有叫做Queue的类(它是个接口名字)。当需要使用栈时,Java已不推荐使用Stack,而是推荐使用更高效的ArrayDeque;既然Queue只是一个接口,当需要使用队列时也就首选ArrayDeque了(次选是LinkedList)。
QueueQueue接口继承自Collection接口,除了最基本的Collection的方法之外,它还支持额外的insertion, extraction和inspe ...
【Java 集合】 Stack&Queue
【Java 集合】 Stack&QueueMetadatatitle: 【Java 集合】 Stack&Queue
date: 2022-12-14 14:24
tags:
- 行动阶段/完成
- 主题场景/编程
- 笔记空间/KnowladgeSpace/ProgramSpace/BasicsSpace
- 细化主题/Java/集合
categories:
- Java
keywords:
- Java/集合
description: Stack&Queue
Stack & Queue概述Java里有一个叫做Stack的类,却没有叫做Queue的类(它是个接口名字)。当需要使用栈时,Java已不推荐使用Stack,而是推荐使用更高效的ArrayDeque;既然Queue只是一个接口,当需要使用队列时也就首选ArrayDeque了(次选是LinkedList)。
QueueQueue接口继承自Collection接口,除了最基本的Collection的方法之外,它还支持额外的insertion, extraction和inspe ...
【Java 集合】 LinkedList
【Java 集合】 LinkedListMetadatatitle: 【Java 集合】 LinkedList
date: 2022-12-14 14:23
tags:
- 行动阶段/完成
- 主题场景/编程
- 笔记空间/KnowladgeSpace/ProgramSpace/BasicsSpace
- 细化主题/Java/集合
categories:
- Java
keywords:
- Java/集合
description: LinkedList
概述LinkedList同时实现了List接口和Deque接口,也就是说它既可以看作一个顺序容器,又可以看作一个队列(Queue),同时又可以看作一个栈(Stack)。这样看来,LinkedList简直就是个全能冠军。当你需要使用栈或者队列时,可以考虑使用LinkedList,一方面是因为Java官方已经声明不建议使用Stack类,更遗憾的是,Java里根本没有一个叫做Queue的类(它是个接口名字)。关于栈或队列,现在的首选是ArrayDeque,它有着比LinkedList(当作栈或队列使用时)有着更好的 ...
【Java 集合】 LinkedList
【Java 集合】 LinkedListMetadatatitle: 【Java 集合】 LinkedList
date: 2022-12-14 14:23
tags:
- 行动阶段/完成
- 主题场景/编程
- 笔记空间/KnowladgeSpace/ProgramSpace/BasicsSpace
- 细化主题/Java/集合
categories:
- Java
keywords:
- Java/集合
description: LinkedList
概述LinkedList同时实现了List接口和Deque接口,也就是说它既可以看作一个顺序容器,又可以看作一个队列(Queue),同时又可以看作一个栈(Stack)。这样看来,LinkedList简直就是个全能冠军。当你需要使用栈或者队列时,可以考虑使用LinkedList,一方面是因为Java官方已经声明不建议使用Stack类,更遗憾的是,Java里根本没有一个叫做Queue的类(它是个接口名字)。关于栈或队列,现在的首选是ArrayDeque,它有着比LinkedList(当作栈或队列使用时)有着更好的 ...
Java 集合
Java 集合Metadatatitle: Java 集合
date: 2022-12-14 14:21
tags:
- 行动阶段/完成
- 主题场景/编程
- 笔记空间/KnowladgeSpace/ProgramSpace/BasicsSpace
- 细化主题/Java
categories:
- Java
keywords:
- Java
description: Java 集合
Java 集合
【Java 集合】 ArrayListundefined
【Java 集合】 LinkedListundefined
【Java 集合】 LinkedHashSet&Mapundefined
【Java 集合】 Stack&Queueundefined
【Java 集合】 TreeSet & TreeMapundefined
【Java 集合】 WeakHashMapundefined
【Java 集合】PriorityQueueundefined
【Java 集合】 ArrayList
【Java 集合】 ArrayListMetadatatitle: 【Java 集合】 ArrayList
date: 2022-12-14 14:21
tags:
- 行动阶段/完成
- 主题场景/编程
- 笔记空间/KnowladgeSpace/ProgramSpace/BasicsSpace
- 细化主题/Java/集合
categories:
- Java
keywords:
- Java/集合
description: 集合
概述ArrayList实现了List接口,是顺序容器,即元素存放的数据与放进去的顺序相同,允许放入null元素,底层通过数组实现。除该类未实现同步外,其余跟Vector大致相同。每个ArrayList都有一个容量(capacity),表示底层数组的实际大小,容器内存储元素的个数不能多于当前容量。当向容器中添加元素时,如果容量不足,容器会自动增大底层数组的大小。前面已经提过,Java泛型只是编译器提供的语法糖,所以这里的数组是一个Object数组,以便能够容纳任何类型的对象。
size(), isEmpty(), get(), ...
Java 集合
Java 集合Metadatatitle: Java 集合
date: 2022-12-14 14:21
tags:
- 行动阶段/完成
- 主题场景/编程
- 笔记空间/KnowladgeSpace/ProgramSpace/BasicsSpace
- 细化主题/Java
categories:
- Java
keywords:
- Java
description: Java 集合
Java 集合
【Java 集合】 ArrayListundefined
【Java 集合】 LinkedListundefined
【Java 集合】 LinkedHashSet&Mapundefined
【Java 集合】 Stack&Queueundefined
【Java 集合】 TreeSet & TreeMapundefined
【Java 集合】 WeakHashMapundefined
【Java 集合】PriorityQueueundefined