Accédez à l'abréviation à partir de 5 exemples de listes Java en italique

Voyons comment écrire une liste itérative à l'aide d'une simple liste. Cette fois, nous utiliserons la liste de chaînes suivante.

list


final List<String> months = 
Arrays.asList("January", "February", "March", "April", "May", "June", "July", "Augast", "September", "October", "November", "December");

Je veux juste que ces éléments soient une sortie standard en séquence.

Style pédagogique

Tout d'abord, utilisons la boucle for. La boucle for est un style impératif et est un itérateur externe. Le style impératif oblige le programmeur à réfléchir beaucoup à «comment» le faire.

1. boucle for (spécification d'index)

Je ne pense pas que ce soit particulièrement difficile. Sorties dans l'ordre à partir du premier élément. Vous devez spécifier l'index en l'incrémentant un par un.

for-with-index


for (int i = 0; i < months.size(); i++) {
  System.out.println(months.get(i));
}

2. boucle for (aucun index spécifié)

Si vous n'avez pas besoin d'index, Java fournit une syntaxe de contrôle plus avancée qu'une simple boucle for. Dans les coulisses, l'interface Iterator est appliquée et les méthodes hasNext () et next () sont appelées. Par conséquent, il n'est pas nécessaire pour le programmeur de spécifier la fin de la boucle en utilisant la taille de la liste.

for-without-index


for (final String month : months) {
  System.out.println(month);
}

Style fonctionnel

Java8 a ajouté une méthode forEach à l'interface Iterable. C'est un style fonctionnel et un itérateur interne. Le style fonctionnel facilite la réflexion sur ce qu'il faut faire.

  1. foreach() Consumer foreach () prend le type Consumer comme argument, mais cette instance traite l'argument reçu par la méthode accept (). Chaque élément de la liste est passé à la méthode accept () un par un, il est donc affiché en standard dans ce cas.

foreach-comsumer


months.forEach(new Consumer<String>() {
  public void accept(final String month) {
    System.out.println(month);
  }
});
  1. foreach() Lambda Vous pouvez remplacer les classes internes anonymes (sous les instances Consumer) par des expressions Lambda.

foreach-lambda


months.forEach((final String month) -> System.out.println(month));

Étant donné que le compilateur Java peut effectuer une inférence de type, il peut être omis comme suit. Cependant, dans ce cas, la finale est ratée et ce n'est plus un argument immuable.

foreach-lambda


months.forEach(month -> System.out.println(month));

5. Voir la méthode foreach ()

Les références de méthode sont une fonctionnalité de Java8 et sont basées sur le nom de la classe :: nom de la méthode. Puisque la méthode déjà définie peut être exécutée sans spécifier l'argument, elle sera encore omise.

foreach-method-reference


months.forEach(System.out::println);

Recommended Posts

Accédez à l'abréviation à partir de 5 exemples de listes Java en italique
[Java] Comment obtenir l'URL de la source de transition
Comment écrire Scala du point de vue de Java
[Java] Comment obtenir la valeur maximale de HashMap
Comment obtenir les informations les plus longues de Twitter à partir du 12/12/2016
La route de JavaScript à Java
De Java naissant (3 ans) à Node.js (4 ans). Et l'impression de retourner à Java
[Java] Comment convertir du type String en type Path et obtenir le chemin
Comment obtenir la longueur d'un fichier audio avec Java
Obtenez le résultat de POST en Java
[Java] Obtenez le jour d'un jour spécifique
[Java] Comment obtenir le répertoire actuel
Comment obtenir la date avec Java
Sortie du livre "Introduction à Java"
[Java] Comment accéder au début d'une chaîne spécifique à l'aide de la classe String
Comment obtenir le chemin absolu d'un répertoire s'exécutant en Java
À partir de Java9, les constructeurs de classe correspondant aux types primitifs sont marqués comme obsolètes.
Je veux obtenir le nom de champ du champ [Java]. (Vieux ton d'histoire)
J'ai essayé de traduire la grammaire de R et Java [Mis à jour de temps en temps]
[Java] Récupère MimeType à partir du contenu du fichier avec Apathce Tika [Kotlin]
[Java] De deux listes à une liste de tableaux
[Java] Obtenir la longueur de la chaîne de paire de substitution
Comment obtenir une classe depuis Element en Java
Comment obtenir le jour d'aujourd'hui
[Java] Comment obtenir l'URL redirigée finale
Java Bienvenue dans le marais des tableaux bidimensionnels
[Promotion de la compréhension de Ruby (1)] Lorsque vous passez de Java à Ruby, commencez par comprendre la différence.
[Java] Exemple de programme qui acquiert les valeurs maximum et minimum d'un tableau
[Java] Comment obtenir facilement la plus longue chaîne de caractères d'ArrayList à l'aide de stream
Exemple de code pour obtenir les valeurs de type SQL clés dans Java + MySQL 8.0
Changements de Java 8 à Java 11
Somme de Java_1 à 100
De Java à Ruby !!
Obtenez l'URL de la destination de la redirection HTTP en Java
De l'introduction de la conception à la création de la table des utilisateurs
[Java] Je souhaite calculer la différence par rapport à la date
[Java] Comment extraire le nom du fichier du chemin
Langage Java du point de vue de Kotlin et C #
Source utilisée pour obtenir l'URL de la source de redirection en Java
[Java] Récupère le fichier dans le fichier jar quel que soit l'environnement
À partir d'avril 2018 Comment installer Java 8 sur Mac
[Android] Comment obtenir la langue de réglage du terminal
[Rails] Comment obtenir le contenu des paramètres forts
Java: utilisez Stream pour trier le contenu d'une collection
[Swift] Comment obtenir l'ID de document Firebase
Comment obtenir le nom de classe de l'argument de LoggerFactory.getLogger lors de l'utilisation de SLF4J en Java
Lors de l'insertion de Java vers MySQL, obtenez Auto_Increment_ID (valeur de numérotation automatique) comme valeur de retour
L'histoire de la montée de Spring Boot de la série 1.5 à la série 2.1 part2
Java qui ignore les données d'Android vers le ROS de Jetson Nano
Migration de Cobol vers JAVA
[JDBC] J'ai essayé d'accéder à la base de données SQLite3 depuis Java.
J'ai essayé de résumer les bases de kotlin et java
Nouvelles fonctionnalités de Java7 à Java8
20190803_Java & k8s sur Azure L'histoire d'aller au festival
Commande pour vérifier le nombre et l'état des threads Java
Connectez-vous de Java à PostgreSQL
Exemple de code pour obtenir les valeurs des principaux types SQL dans Java + Oracle Database 12c