move datastructures into collections for organization

This commit is contained in:
Xevion
2020-02-26 18:03:01 -06:00
parent c447ed29b0
commit c0fbdf37e0

83
study/collections.MD Normal file
View File

@@ -0,0 +1,83 @@
### Common Java Data Structures Summary
Java contains many object based data structures that you can import, some used more than others (ArrayList, for example).
Not all of them work in familiar ways, and their methods can be confusing without proper usage, study, and a quick explanation over how they're used.
#### Interfaces
##### Collection
Common Implementing SubInterfaces:
* Deque
* List
* Queue
* Set
* SortedSet
Common Implementing Classes:
* ArrayList
* ArrayDeque
* EnumSet
* HashSet
* LinkedList
* PriorityQueue
* Stack
* TreeSet
##### Iterable
Common Implementing SubInterfaces
* Collection
* Deque
* List
* Queue
* Set
* SortedSet
Common Implementing Classes:
* ArrayDeque
* ArrayList
* EnumSet
* HashSet
* LinkedList
* PriorityQueue
* Stack
* TreeSet
##### List
Super Interfaces:
* Collection
* Iterable
Implementing Classes:
* ArrayList
* LinkedList
* Stack
A unordered collection (also known as a *sequence*) that allows precise control over where each element is inserted in a list.
Users have methods allowing all of the following to methods:
* 4 methods providing positional index-based access to list elements.
* 1 method for accessing a special iterator, `ListIterator` allowing element insertion and replacement starting from a specified position.
* 2 methods for searching for a specified object. Usually *costly* linear searches.
* 2 methods for efficiently inserting and removing *multiple* elements at an arbitrary point.
##### Set
##### Queue
##### Deque
##### SortedSet
##### Map
##### SortedMap
##### NavigableMap
#### Classes
##### ArrayList
##### LinkedList
##### Stack
##### PriorityQueue
##### TreeSet
##### ArrayDeque
##### EnumSet
##### HashSet
##### HashMap