Une petite histoire pour le débogage. Comment suivre lorsqu'une valeur est ajoutée à une liste.
public class Foo {
public List<String> list = new ArrayList<>();
}
Si vous souhaitez surveiller lorsqu'une valeur est ajoutée à une liste comme celle ci-dessus, vous pouvez la réécrire dans une classe anonyme et remplacer la méthode ʻadd` comme indiqué ci-dessous pour générer un journal lorsque la valeur est ajoutée ou traiter à un point d'arrêt. Vous pouvez l'arrêter.
public class Foo {
public List<String> list = new ArrayList<String>() {
@Override
public boolean add(String string) {
//Si vous ajoutez un point d'arrêt ici, vous pouvez arrêter le processus lorsque la valeur est ajoutée.
System.out.println("ajoutée:" + string);
return super.add(string);
}
};
}
Non seulement ʻadd mais aussi d'autres traitements tels que
remove` peuvent être étendus.
Pour un petit débogage seulement.
Les listes peuvent être initialisées à l'aide de classes anonymes et de blocs d'initialisation.
List<String> list = new ArrayList<String>();
list.add("1");
list.add("2");
list.add("3");
Ce qui précède peut être écrit comme suit.
List<String> list = new ArrayList<String>() {{
add("1");
add("2");
add("3");
}};
Bien que le nombre de types soit légèrement réduit, il n'est pas convivial pour les débutants, il n'est donc pas recommandé de l'utiliser en développement d'équipe (je pense que ce n'est généralement pas fait ...)