[Principiante de] Cómo aprender las colecciones de Java

Prefacio

Solo una cabeza calva puede volverse más fuerte.

El texto se ha incluido en mi artículo destacado de GitHub, bienvenido a Star : https://github.com/ZhongFuCheng3y/3y

Si conoces a mis compañeros de clase, sabrás que he escrito muchas series de artículos, pero ninguno de ellos está escrito para estudiantes que recién están comenzando . La mayoría de ellos están escritos de acuerdo con mi progreso de aprendizaje personal.

image.png Artículos de serie

Aunque puede leer uno por uno en el orden de mis artículos, si es nuevo para los principiantes, es posible que desee obtener una guía de estudio (guía de ruta). Así que tengo este artículo, con la esperanza de ayudar a los estudiantes que recién están comenzando.

Si la respuesta a este artículo es buena, continuaremos actualizando otros temas. Me siento bien escrito, espero que me puedan elogiar !

Guía de estudio de la colección Java

Este artículo planteará muchas preguntas que pueden ser pensadas por los principiantes, pero no las responderá una por una, y solo aclarará la dirección general. El contenido de este artículo está sesgado hacia guías en lugar de tutoriales técnicos.

Si desea una respuesta específica, puede leer la información que he escrito:

https://github.com/ZhongFuCheng3y/3y

O únete al grupo de intercambio de talentos para discutir con muchos desarrolladores El enlace anterior de Github tiene mi información de contacto.

Antes de aprender una tecnología, ¡debes saber por qué quieres aprenderla!

P: Tenemos que saber por qué necesitamos aprender las colecciones de Java. Cuando aprendemos las colecciones de Java, ya hemos aprendido las matrices. ¿Por qué utilizo las colecciones de Java en lugar de las matrices? ¿Cuál es la diferencia entre una matriz y una colección de Java?

image.png Aprender las colecciones de Java primero necesita saber

R: Java es un lenguaje orientado a objetos, es inevitable tratar con objetos, para facilitar la operación de múltiples objetos, luego tenemos que almacenar estos múltiples objetos, si desea almacenar múltiples objetos (variables), es fácil pensar en Un contenedor (colección) para cargar

En general: Java nos proporciona herramientas para facilitarnos la manipulación de múltiples objetos Java .

image.png Operación conveniente de múltiples objetos

Cómo empezar a aprender colecciones de Java

P: A partir de lo anterior, ya sabemos por qué debemos aprender las colecciones de Java. A continuación, debemos conocer el uso básico de las colecciones de Java y comprender qué es a partir de los puntos de conocimiento generales.

image.png Introducción a las colecciones de Java

R: De hecho, aprendemos colecciones de Java para facilitar la operación de múltiples objetos, y Java nos proporciona una serie de API (métodos) para que podamos operar. Entonces, cuando aprendemos por primera vez las colecciones de Java, debemos aprender más qué significan estas API (métodos).

image.png Uso y efectos de API

P: Una vez que tengamos una cierta comprensión del uso de API de las colecciones de Java, deberíamos comprenderlo desde una perspectiva orientada a objetos . Por qué se abstraen varias interfaces y cuáles son las características de cada interfaz.

image.png Comprender la interfaz y las clases comunes de cada interfaz desde una perspectiva orientada a objetos.

R: Podemos resumir varias clases de implementación de uso común . Para estas clases de implementación de uso común, debemos saber cuál es su estructura de datos y cuándo usar esta clase.

image.png Necesita conocer la estructura de datos de cada subclase común

Estructura de datos para aprender y comprender:

image.png estructura de datos

En este punto, después de comprender brevemente la estructura de datos de cada clase de implementación, es posible que simplemente recordemos las siguientes conclusiones :

  • Si se trata de un tipo de colección, hay List y Set para que podamos elegir. La lista se caracteriza por la inserción ordenada y los elementos son repetibles. La característica de Set es que la inserción es desordenada y los elementos no se pueden repetir. En cuanto a qué clase de implementación elegir como nuestro contenedor de almacenamiento, tenemos que mirar el escenario de aplicación específico. Si desea que sea repetible, debe usar Lista y seleccionar las subcategorías comunes en Lista. Se espera que no se pueda repetir y seleccione la subclase común en Establecer.

  • Si es un Key-Valuetipo, entonces elegiremos Mapa. Si desea mantener el orden de inserción, podemos elegir LinkedHashMap, si no lo necesita, elija HashMap, si desea ordenar, elija TreeMap.

  • En resumen: después de aprender la estructura de datos de las clases de implementación comunes , tendrá una comprensión clara de sus escenarios de uso.

image.png Qué tipo de contenedor elegir para almacenar nuestros objetos, la clave es comprender la estructura de datos de cada clase de colección de uso común

Avance de montaje y entrevista

Si sabemos qué tipo de colección elegir como contenedor cuando escribimos código, entonces ya estamos comenzando. Pero lo que debe saber es que si va a la entrevista, no solo debe saber tan poco.

(Si todavía es un principiante o no tiene una base cero , le sugiero que pueda omitir esta parte. Puede haber muchos comentarios en Internet, como: "Si tiene una base sólida de Java, no se preocupará por encontrar un trabajo en el futuro. Cuando esté aprendiendo los conceptos básicos de Java ¡Debes aprender bien los conceptos básicos y mirar el código fuente! " Pero creo que esta pieza se establece cuando hay una determinada codificación / proyecto o cuando estás buscando un trabajo. Si recién estás comenzando a aprender Java, no debes mirar el código fuente. Es fácil disuadirse )

Mi punto es: si recién está comenzando a aprender Java, primero debe saber exactamente por qué quiere aprender esto, cuál es el uso de esto, dónde se usa y la familiaridad con los métodos comúnmente usados ​​es suficiente. Incluso si pasa unas dos semanas mirando la implementación del código fuente, es posible que lo comprenda. Pero créame, probablemente lo olvidará .

La recopilación de Java es el foco de la entrevista Durante la entrevista, casi todas las empresas harán preguntas de recopilación, desde el código básico hasta el código fuente, paso a paso. Los puntos de conocimiento de la entrevista de la colección de Java no se limitan al uso básico. Quizás el entrevistador te pregunte:

  • ¿Cuál es la estructura de datos de HashMap? ¿Cómo se expandió? ¿Se utilizan árboles rojo-negros en la capa inferior? ¿Cómo implementa el código fuente de JDK el valor Key Hash? ¿Por qué haces esto?

  • ¿Es seguro el hilo de HashMap? ¿Qué es la seguridad de subprocesos? ¿Cuál es una mejor solución? ¿Cómo se implementa HashMap seguro para subprocesos?

  • ¿Cómo determina HashSet que la clave está duplicada?

  • …..muchisimo

image.png para resumir

Si desea una respuesta específica, puede leer la información que he escrito:

https://github.com/ZhongFuCheng3y/3y

O únase al grupo de intercambio de talentos para discutir con muchos desarrolladores, el enlace del artículo anterior tiene mi información de contacto.

La imagen original del mapa mental también está disponible en GitHub

Al final

En general, no es difícil comenzar con las colecciones de Java. En el análisis final, creo que hay tres cosas:

  • Comprenda por qué debería aprender las colecciones de Java

  • Conozca las diversas interfaces de la colección Java y el uso de la clase de implementación de uso común

  • Aprenda cuál es la estructura de datos de las clases de implementación de uso común y elija una clase de implementación adecuada para cargar sus propios objetos al escribir código.

No es necesario leer el código fuente para la entrada de base cero, y debe revisar y leer el código fuente antes de la entrevista (este es un punto de conocimiento imprescindible para la entrevista).

image.png Este artículo resume
bienvenido al aprendizaje en grupo de intercambio , notas más grupo para decir la verdad en este grupo, incluso si no hablas, solo mira chats, puedes aprender algoimagen

image.png


Supongo que te gusta

Origin blog.51cto.com/15082392/2590290
Recomendado
Clasificación