[Java] Un article sur IntelliJ IDEA enseignant la méthode putIfAbsent de Map

Contexte

Dans le processus d'amélioration du code existant, j'essayais de réduire les avertissements d'IntelliJ.

À ce moment-là, il y avait un processus de "définir la valeur lorsque la valeur de clé est nulle pour Map", mais j'ai appris du point d'IntelliJ à ce sujet, j'ai donc écrit cet article cette fois.

Exemple spécifique (avant)

Par exemple, supposons qu'il existe une carte avec le nom de préfecture et l'emplacement du bureau préfectoral suivants.

Map<String, String> prefectures = new HashMap<>();
prefectures.put("Préfecture d'Ibaraki", "Mito");
prefectures.put("Préfecture de Tochigi", "Utsunomiya");
prefectures.put("Préfecture de Gunma", null);

Actuellement, la valeur de la préfecture de Gunma clé est nulle et nous voulons définir la valeur ici. À ce stade, dans l'implémentation existante, la valeur a été définie par la méthode suivante.


if (prefectures.get("Préfecture de Gunma") == null) {
    prefectures.put("Préfecture de Gunma", "Maebashi");
}

IntelliJ a suggéré que vous puissiez l'écrire plus simplement avec la méthode putIfAbsent.

Exemple spécifique (après)

La méthode putIfAbsent est une méthode qui définit la valeur lorsque la clé est nulle comme ci-dessus, et si vous utilisez cette méthode, l'instruction if comme dans l'exemple précédent disparaît,


prefectures.putIfAbsent("Préfecture de Gunma", "Maebashi");

Vous pouvez écrire clairement sur une seule ligne.

Je ne connaissais pas l'existence de cette méthode, donc c'est facile, mais j'ai écrit cet article cette fois.

Résumé

Lors de l'exécution du processus de «définition de la valeur lorsque la valeur de clé est nulle pour Map», vous pouvez l'écrire clairement à l'aide de la méthode putIfAbsent sans utiliser l'instruction if.

J'ai de nouveau pensé qu'IntelliJ, qui avait même fait une telle proposition cette fois, était incroyable, mais je me demandais aussi comment connaître une méthode aussi pratique.

J'apprécierais que vous me disiez s'il y a une meilleure façon que «Regardez JavaDoc et jetez un œil» et «Lisez les notes de version JDK».

J'espère que cet article aide quelqu'un. Jusqu'à la fin Merci d'avoir lu.

Les références

JavaDoc pour méthode putIfAbsent

Recommended Posts

[Java] Un article sur IntelliJ IDEA enseignant la méthode putIfAbsent de Map
Une histoire sur la prise en charge de Java 11 pour les services Web
Une histoire sur le JDK à l'ère de Java 11
Histoire d'essayer de faire fonctionner le fichier JAVA
À propos de la liaison de méthode Java
A propos des méthodes de fractionnement (Java)
Une histoire sur le développement de ROS appelé rosjava avec java
Remarques sur Java GC
Créer une méthode java [Memo] [java11]
Une histoire de malentendu sur l'utilisation du scanner Java (mémo)
[Note] Une histoire sur la modification des outils de compilation Java avec VS Code
Une histoire sur l'utilisation de l'API League Of Legends avec JAVA
Une histoire sur la difficulté à aligner un cadre de test avec Java 6
Histoire vraiment effrayante (anti-motif Java)
Java + OpenCV 3.X avec IntelliJ IDEA
[IntelliJ IDEA] Comment ajouter automatiquement la finale lors de l'enregistrement d'un fichier Java
Création d'un projet (et d'un référentiel GitHub) à l'aide de Java et Gradle avec IntelliJ IDEA
Une histoire sur un projet Spring Boot écrit en Java qui prend en charge Kotlin
Une histoire sur l'écriture d'une méthode de dichotomie lors d'une session d'étude en interne
[Débutant] Histoire de commencer à étudier Java pour la recherche d'emploi ~ 2e mois ~
[Débutant] Une histoire sur le début de l'étude de Java pour la recherche d'emploi ~ 1er mois ~
[Débutant] Une histoire sur le début de l'étude de Java pour la recherche d'emploi ~ 5ème mois ~
[Débutant] Une histoire sur le début de l'étude de Java pour la recherche d'emploi ~ 4ème mois ~
A propos du renvoi d'une référence dans un Java Getter
[Création] Un mémorandum sur le codage en Java
Optimiser les déclarations d'importation Java dans IntelliJ IDEA
J'ai créé un plug-in pour IntelliJ IDEA
À propos du débogueur de flux du plugin IntelliJ IDEA