[JAVA] Pourquoi attribuer ArrayList à la liste

Conclusion ou opinion personnelle

Peut-être que c'est parce qu'il n'y a pas de problème.

C'est une phrase extrême, Tant que l'utilisateur garantit l'interface Je ne suis pas intéressé par le coût de traitement de List <T> :: size ().

Ce n'est pas une raison de devoir lister Il n'y a aucune raison claire d'être aussi conscient.

En conséquence, cela suffit, alors List va bien. Par conséquent, il est attribué à List.

Supplément ou excuse

Bien sûr, s'il s'agit d'un service commercial, je pense qu'il devrait être vérifié par PoC ou test de performance. Il est nécessaire de vérifier si l'utilisation était correcte dans un autre processus. Il n'y a aucune intention de recommander que le codage fonctionne.

De plus, depuis l'ajout de l'API Stream, les chances d'écrire «new ArrayList <> ()» ont diminué. Tout va peut-être bien maintenant.

Attentes pour ceux qui lisent

~~ Burning ~~ Je vous serais reconnaissant si vous pouviez nous donner diverses opinions telles que des objections et des contre-arguments.

Contexte

Quand je regardais le mot à la mode sur Twitter plus tôt cette semaine, un café du centre-ville était en feu.

Du flux de fouille à ce que chacun a et quel genre d'impression il Quand j'ai remarqué, j'étudiais les caractéristiques de Kramer. (Si vous suivez le lien Wikipédia, pour une raison quelconque, vous avez l'impression d'être enfin dans l'espace.)

À ce moment-là, dans un article Java avec une section de commentaires légèrement brûlante, pourquoi

sample1.java


ArrayList<T> list = new ArrayList<>();

ne pas,

sample2.java


List<T> list = new ArrayList<>();

J'ai remarqué la question "Vraiment?"

Le côté interrogé

La personne qui a posé la question

`` Je le fais même si c'est religieux et sans raison

J'écrivais ça.

De la manière approximative de la section des commentaires Au début, j'ai dit: "Il y en a des types comme celui-ci ..." Peu à peu, j'ai pensé: "Mais sûrement ... pourquoi?" Je voulais afficher "Comment pourrais-je répondre à la même question?"

Maintenant cette personne n'est pas un Kramer Je suis reconnaissant d'avoir l'opportunité de remettre en question le code que j'écrivais avec désinvolture.

Je ne vous donnerai pas de nom, mais je voudrais profiter de cette occasion pour vous remercier.

Recommended Posts

Pourquoi attribuer ArrayList à la liste
[Java] Comment utiliser List [ArrayList]
Convertir un tableau de chaînes en une liste d'entiers en Java
Comment trier une liste à l'aide du comparateur
Comment utiliser un tableau pour la clé TreeMap
java: Comment écrire une liste de types génériques [Note]
[Ruby] Est-ce que self fait référence à une classe ou à une instance?
Attribuer des expressions lambda Java8 aux variables et les réutiliser
Comment changer une chaîne dans un tableau en un nombre dans Ruby
Je veux faire une liste avec kotlin et java!
Comment stocker des chaînes de ArrayList à String en Java (personnel)
Convertir un tableau potentiellement nul en flux
[Java] Comment rechercher des valeurs dans un tableau (ou une liste) avec la méthode contains