search
HomeJavaJavaBaseWhat are the java containers?

What are the java containers?

Jul 23, 2021 pm 05:34 PM
javacontainer

Java containers include: ArrayList, LinkedList, Vector, HashSet, LinkedHashSet, TreeSet, LinkedHashMap, TreeMap, ConcurrentHashMap, Hashtable, etc.

What are the java containers?

The operating environment of this tutorial: windows7 system, java8 version, DELL G3 computer.

What is a container?

Container refers to a basic device used to hold materials and is mainly a shell.

The purpose of the Java container class library is to "save objects". Excerpted from: "Thinking in Java".

The Java collection class is a particularly useful tool class that can be used to store a varying number of objects and can implement commonly used data structures, such as stacks, queues, etc. A Java collection is like a container that can "throw" multiple objects (actually references to objects, but commonly called objects) into the container. Excerpted from: "Crazy Java Lecture Notes".

Containers in Java are also called collections, which are objects specially used to manage objects. This is what I am talking about.

What are Java containers?

  • Java containers are divided into two categories: Collection and Map, and there are many subclasses under them. The following is the inheritance system of Collection and Map:

What are the java containers?
What are the java containers?

##The specific structure is as follows:


    Collection
    • List
      • ArrayList
      • LinkedList
      • Vector
      • Stack
    • Set
      • HashSet
      • LinkedHashSet
      • TreeSet
  • Map
    • HashMap
      • LinkedHashMap
    • TreeMap
    • ConcurrentHashMap
    • Hashtable

##What is the difference between ArrayList and LinkList?

ArrayList (array structure)

:

    Advantages: get and set calls take constant time, that is, the query Fast
  • Disadvantages: The insertion of new items and the deletion of existing items are expensive, that is, the speed of addition and deletion is slow
LinkedList (linked list structure)

:

    Advantages: The cost of inserting new items and deleting existing items is very small, that is, adding and deleting are fast
  • Disadvantages: Calling get and set is expensive and not suitable for querying

The difference between List, Set and Map What is it? The difference between List, Set, and Map is mainly reflected in two aspects: whether the elements are ordered and whether duplicate elements are allowed.

The differences between the three are as follows:


What are the java containers?

What is the difference between HashMap and Hashtable?

    Storage: HashMap operates with null key and value, while Hashtable does not allow this.
  • Thread safety: Hashtable is thread-safe, while HashMap is not thread-safe.
  • Recommended use: As you can see in the class annotation of Hashtable, Hashtable is a reserved class and is not recommended for use. It is recommended to use HashMap instead in a single-threaded environment. If multi-threading is required, use ConcurrentHashMap substitute.

What is the difference between Comparable and Comparator? Comparable interface

    Implementing the Comparable interface class indicates that objects of this type can be compared in size. Such objects that can be compared in size allow for natural sorting.
  • Comparator interface

    The comparator is used to compare any properties of objects.
  • When sorting, you can achieve arbitrary attribute sorting by specifying an attribute comparator.
  • When sorting, the Comparable interface is used for natural sorting, while the Comparator interface is used for custom sorting. Custom sorting is more flexible, convenient and commonly used.
Comparable is not recommended for use because it is intrusive to the program itself.


Recommended related video tutorials:

Java video tutorial

The above is the detailed content of What are the java containers?. For more information, please follow other related articles on the PHP Chinese website!

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

MantisBT

MantisBT

Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

Dreamweaver Mac version

Dreamweaver Mac version

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

PhpStorm Mac version

PhpStorm Mac version

The latest (2018.2.1) professional PHP integrated development tool

WebStorm Mac version

WebStorm Mac version

Useful JavaScript development tools