Les frameworks de collection Java tels que set, map et list ne fournissent aucune méthode pratique d'initialisation. Chaque fois que vous créez une collection, vous devez ajouter les valeurs une par une. comme
Copiez le code comme suit :
Set<Character> letter=new HashSet<Character>();
lettre.ajouter('a');
lettre.ajouter('b');
//...
Très fastidieux.
Mais avec des classes internes anonymes. Cela pourrait être un peu plus simple.
Copiez le code comme suit :
Set<Character> letter=new HashSet<Character>()
{
{
ajouter('a'); ajouter('b'); ajouter('c'); ajouter('d');
ajouter('e'); ajouter('f'); ajouter('g'); ajouter('h');
ajouter('i'); ajouter('j'); ajouter('k'); ajouter('l');
ajouter('m'); ajouter('n'); ajouter('o'); ajouter('p');
ajouter('q'); ajouter('r'); ajouter('s'); ajouter('t');
ajouter('u'); ajouter('v'); ajouter('w'); ajouter('x');
ajouter('y'); ajouter('z');
ajouter('A'); ajouter('B'); ajouter('C'); ajouter('D');
ajouter('E'); ajouter('F'); ajouter('G'); ajouter('H');
ajouter('Je'); ajouter('J'); ajouter('K'); ajouter('L');
ajouter('M'); ajouter('N'); ajouter('O'); ajouter('P');
ajouter('Q'); ajouter('R'); ajouter('S'); ajouter('T');
ajouter('U'); ajouter('V'); ajouter('W'); ajouter('X');
ajouter('Y'); ajouter('Z');
}
}; //Le premier niveau de crochets définit les classes internes anonymes et le deuxième niveau est le module d'initialisation.