Vidéo: #15#Algorithme ( les tableaux unidimensionnels) 2024
Les tableaux Java sont agréables, mais ils ont de sérieuses limitations. Imaginez que vous stockez les noms des clients dans un ordre prédéterminé. Votre code contient un tableau et le tableau contient de l'espace pour 100 noms.
String name [] = new Chaîne [100]; pour (int i = 0; i <100; i ++) {nom [i] = new String ();}
Tout va bien jusqu'à ce qu'un jour, le numéro de client 101 apparaisse. Au fur et à mesure que votre programme s'exécute, vous saisissez les données pour le client 101, espérant désespérément que le réseau de 100 composants peut s'étendre pour répondre à vos besoins croissants.
Pas de chance. Les tableaux ne se développent pas. Votre programme se bloque avec une exception ArrayIndexOutOfBoundsException.
"Dans ma prochaine vie, je vais créer des tableaux de longueur 1 000", vous vous dites. Et quand votre prochaine vie tourne autour, vous faites juste cela.
String name [] = new Chaîne [1000 ]; pour (int i = 0; i << 1000 ; i ++) {nom [i] = new String ();} Mais pendant votre prochaine vie, une récession économique se produit. Au lieu d'avoir 101 clients, vous avez seulement 3 clients. Maintenant, vous perdez de l'espace pour 1 000 noms lorsque l'espace pour 3 noms ferait l'affaire.
Un jour, un tout nouveau client se présente. Parce que vos clients sont stockés dans l'ordre (alphabétiquement par nom de famille, numériquement par numéro de sécurité sociale, peu importe), vous voulez presser ce client dans le bon composant de votre tableau. Le problème est que ce client appartient très tôt dans le tableau, au composant avec l'index 7. Que se passe-t-il alors?
Vous continuez jusqu'à ce que vous ayez déplacé le nom dans le composant 7. Ensuite, vous mettez le nom du nouveau client dans le composant 7. Quelle douleur! Bien sûr, l'ordinateur ne se plaint pas. Mais en déplaçant tous ces noms, vous gaspillez du temps de traitement, vous gaspillez de l'énergie et vous gaspillez toutes sortes de ressources.
"Dans ma prochaine vie, je vais laisser trois composants vides entre deux noms. "Et bien sûr, votre entreprise se développe. Jusqu'à ce que, finalement, vous trouviez que trois ne suffisent pas.