Accueil Finances personnelles Tableaux dans Java Code - mannequins

Tableaux dans Java Code - mannequins

Vidéo: Java #12 - tableaux 2025

Vidéo: Java #12 - tableaux 2025
Anonim

La classe ArrayList utilisée dans de nombreux programmes d'application Android n'est que la partie visible de l'iceberg des collections Java. La bibliothèque Java contient de nombreuses classes de collections, chacune avec ses propres avantages. La table contient une liste abrégée.

Certaines classes de collection

Nom de classe Characteristic
ArrayList Un tableau redimensionnable.
LinkedList Liste de valeurs ayant chacune un champ pointant vers le suivant

dans la liste.

Stack Une structure (qui se développe de bas en haut) qui est optimisée

pour l'accès à la valeur la plus élevée. Vous pouvez facilement ajouter une valeur au sommet

ou le supprimer du haut.

Queue Une structure (qui se développe à une extrémité) optimisée pour

ajoutant des valeurs à une extrémité (l'arrière) et supprimant les valeurs de l'autre extrémité

(l'avant).

PriorityQueue Une structure, comme une file d'attente, qui permet à certaines valeurs (plus prioritaires)

de se déplacer vers l'avant.

HashSet Une collection ne contenant aucune valeur en double.
HashMap Collection de paires clé / valeur.

Chaque classe de collection possède son propre ensemble de méthodes (en plus des méthodes héritées de AbstractCollection, l'ancêtre de toutes les classes de collection).

Un tableau est un type particulier de collection optimisé pour l'indexation. Autrement dit, vous pouvez facilement et efficacement trouver la 100ème valeur stockée dans un tableau, la 1 000ème valeur stockée dans un tableau, ou la 1 000 000ème valeur stockée dans un tableau.

Le tableau est une caractéristique vénérable et éprouvée de nombreux langages de programmation, y compris des langages plus récents tels que Java et des langages plus anciens tels que FORTRAN. En fait, l'historique du tableau remonte tellement loin que la plupart des langages (y compris Java) ont une notation spéciale pour traiter les tableaux. La liste illustre la notation pour les tableaux dans un programme Java simple.

package com. allmycode. collections; public class SimpleCollectionsDemo {public static void principal (String [] args) { String [] myArray = new String [4]; myArray [0] = "Bonjour"; myArray [1] = ","; myArray [2] = "lecteurs"; myArray [3] = "!"; pour (int i = 0; i <4; i ++) { Système. en dehors. print (monArray [i]); } Système. en dehors. println (); for (String string: myArray) {Système. en dehors. print (string);}}}

La figure montre la sortie d'une exécution du code dans la liste. La boucle for habituelle et la boucle for enhanced affichent la même sortie.

Exécution du code dans la liste.

Dans la liste, la boucle ordinaire utilise des index, chaque index étant indiqué par des crochets.Comme c'est le cas avec toutes les collections Java, l'index de la valeur initiale est 0, pas 1. Notez également le numéro 4 dans la déclaration du tableau - cela indique que "vous pouvez stocker 4 valeurs dans le tableau. "

Le chiffre 4 n'indique pas que" vous pouvez attribuer une valeur à myArray [4]. "En fait, si vous ajoutez une instruction telle que myArray [4] =" Oups! "Au code dans la liste, vous obtenez un message d'erreur désagréable (ArrayIndexOutOfBoundsException) lorsque vous exécutez le programme.

L'instruction String [] myArray = new String [4] crée un tableau vide et fait correspondre la variable myArray à ce tableau vide. Le tableau peut potentiellement stocker jusqu'à quatre valeurs. Mais, initialement, cette variable fait référence à un tableau qui ne contient aucune valeur. Ce n'est que lorsque Java exécute la première instruction d'affectation (myArray [0] = "Hello") que le tableau contient des valeurs.

Vous pouvez facilement et efficacement trouver la 100ème valeur stockée dans un tableau ou la 1 000 000ème valeur stockée dans un tableau. Pas mal pour une journée de travail. Alors, quel est l'inconvénient d'utiliser un tableau? Le plus grand inconvénient d'un tableau est que chaque tableau a une limite fixe sur le nombre de valeurs qu'il peut contenir. Lorsque vous créez le tableau dans la liste, Java réserve de l'espace pour quatre valeurs de chaîne au maximum.

Si, plus tard dans le programme, vous décidez que vous voulez stocker un cinquième élément dans le tableau, vous avez besoin d'un code maladroit et inefficace pour créer un plus grand tableau. Vous pouvez également surestimer la taille dont vous avez besoin pour un tableau, comme indiqué dans cet exemple:

String [] myArray = new String [20000000];

Lorsque vous surestimez, vous perdez probablement beaucoup d'espace mémoire.

Une autre caractéristique désagréable d'un tableau est la difficulté que vous pouvez avoir à insérer de nouvelles valeurs. Imaginez avoir une boîte en bois pour chaque année dans votre collection de Emperor Constantine Comics . La série remonte à l'année 307 A. D., lorsque Constantin devint chef de l'Empire romain.

Vous n'avez que 1 700 boîtes parce que vous avez manqué environ six ans (surtout entre 1150 et 1155). Les boîtes ne sont pas numérotées, mais elles sont empilées l'une à côté de l'autre sur une ligne de 200 mètres de long. (La ligne est aussi longue que le 55ème étage d'un gratte-ciel est haut.)

Lors d'une vente de garage à Istanbul, vous trouverez une édition rare de Emperor Constantine Comics de mars 1152. Après avoir premier comique de l'année 1152, vous vous rendez compte que vous devez insérer une nouvelle boîte dans la pile entre les années 1151 et 1153, ce qui implique de déplacer l'année 2013 boîte d'environ dix centimètres vers la gauche, puis déplacer la boîte 2012 à la place de la boîte 2013, puis en déplaçant la boîte 2011 à la place de la boîte 2012. Etc.

La vie de l'amateur Empereur Constantin Comics est sur le point de devenir ennuyeuse! Insérer une valeur au milieu d'un grand tableau est tout aussi ennuyeux.

Tableaux dans Java Code - mannequins

Le choix des éditeurs

Pour les seniors: Comment travailler avec Windows dans Microsoft Windows - les nuls

Pour les seniors: Comment travailler avec Windows dans Microsoft Windows - les nuls

Windows, avec un W majuscule, tire son nom de sa caractéristique principale: Windows, avec un w minuscule. Se familiariser avec Windows signifie apprendre à ouvrir, fermer, redimensionner, déplacer et basculer entre les fenêtres, ce qui est la clé pour jongler avec succès avec plusieurs activités. Chaque programme que vous exécutez occupe sa propre fenêtre. Une fenêtre peut occuper une partie de ...

Comment accepter ou rejeter les cookies dans Safari - dummies

Comment accepter ou rejeter les cookies dans Safari - dummies

Un cookie est un petit fichier qu'un site Web enregistre automatiquement sur le disque dur de votre Mac. Il contient des informations, telles que vos préférences ou votre date de naissance, que le site utilisera lors de vos prochaines visites. Dans Mac OS X Snow Leopard, Safari vous permet de choisir d'accepter ou non tous les cookies ...

Le choix des éditeurs

Construire des boîtes et des lignes Bézier dans QuarkXPress - des nuls

Construire des boîtes et des lignes Bézier dans QuarkXPress - des nuls

Pour créer une boîte ou une ligne dans QuarkXPress plus complexe qu'un simple rectangle, ovale ou starburst, vous entrez dans le domaine du chemin de Bézier. Si vous avez utilisé l'outil Plume dans Adobe Illustrator ou Photoshop, vous comprenez déjà les chemins de Bézier. Il faut un peu de pratique et un esprit détendu ...

Création d'un rapport avec Crystal Reports 10 - témoins

Création d'un rapport avec Crystal Reports 10 - témoins

Lorsque vous démarrez Crystal Reports 10, généralement l'une des trois choses suivantes: créer un rapport, modifier un rapport ou exécuter un rapport sur les données de votre base de données. Les rapports prennent des données à partir d'une base de données, les traitent, les formatent et les affichent ensuite sur une imprimante, un écran d'ordinateur ou un site Web. Crystal Reports ...

Traitant des commentaires Javadoc dans Eclipse - mannequins

Traitant des commentaires Javadoc dans Eclipse - mannequins

Lorsque vous utilisez Eclipse pour écrire du code Java, n'oubliez pas de éditez les commentaires de Javadoc (les choses qui commencent par / **). Vous pouvez ajouter des informations utiles lorsque vous modifiez les commentaires Javadoc et lorsque vous les modifiez, l'aide au code d'Eclipse propose des suggestions. N'oubliez pas ces astuces lorsque vous modifiez vos commentaires Javadoc: Ajouter un commentaire Javadoc: ...

Le choix des éditeurs

Les connexions cachées sur le Nikon D5600 - les nuls

Les connexions cachées sur le Nikon D5600 - les nuls

Ouvrent les couvercles sur les côtés gauche et droit du Nikon D5600 caméra, et vous verrez plusieurs ports de connexions cachées. Les ports de connexion suivants sont indiqués sur cette image: Terminal d'accessoires: ce terminal accepte les accessoires suivants: câble déclencheur à distance Nikon MC-DC2; Télécommandes sans fil WR-1 et WR-R10; et les unités GPS GP-1 / GP-1A. I ...

Les connexions cachées sur votre Nikon D5200 - les nuls

Les connexions cachées sur votre Nikon D5200 - les nuls

ÉParpillés sur l'extérieur de votre appareil photo sont nombreuses commandes que vous utilisez pour changer d'image -prend des paramètres, revoir et modifier vos photos, et effectuer diverses autres opérations. Caché sous le couvercle sur le côté gauche de la caméra, vous trouverez les quatre ports de connexion suivants, étiquetés dans cette figure: Borne accessoire: Vous pouvez brancher le Nikon en option ...

Des boutons et autres commandes du Nikon D7500 - mannequins

Des boutons et autres commandes du Nikon D7500 - mannequins

C'est génial d'avoir une carte pour le boutons et commandes sur votre appareil photo, mais ce n'est pas beaucoup d'aide si vous ne pouvez pas vous rappeler quel bouton appuyer sur quand (et pourquoi). Alors, voici un aperçu des fonctions des contrôles les plus importants. (Certains contrôles ont des fonctions supplémentaires pendant certaines opérations, mais la table ...