Apprendre la programmation Java: comment utiliser les listes, les threads & Co.
Dans le dernier article de notre série Java, nous expliquons comment gérer correctement les threads, les listes, les exceptions et les fichiers en Java.
Java: quelles sont les exceptions?
Si vous n'avez pas encore travaillé avec Java, vous pouvez d'abord lire nos "Bases" ici. Divers exemples de codes peuvent être trouvés dans la galerie d'images à la fin de l'article.
- Une exception est un problème qui se produit pendant l'exécution du programme.
- Il existe un code spécial pour gérer une telle commande. Pour ce faire, écrivez d'abord "try {" puis le code à exécuter. Ecrivez ensuite "} catch (Exception e) {" puis diverses commandes à exécuter si l'opération précédente n'est pas possible. N'oubliez pas d'ajouter une accolade à la fin.
- Une commande de lancer est également très pratique. Un exemple de ceci est le code »int div (int a, int b) lève« ⮩ »ArithmeticException {« ⮩ »if (b == 0) {« ⮩ »lève une nouvelle ArithmeticException (« Division by 0! »);« ⮩ »} Sinon {« ⮩ »renvoie a / b;« ⮩ »}« ⮩ »}«. L'instruction throws de la méthode définit le type d'exception que la méthode peut obtenir. Le mot clé throw détermine ce qui doit se produire avec cette exception.
- Pratique: un seul bloc try peut contenir plusieurs blocs catch.
Utiliser des threads en Java
Les threads vous permettent d'exécuter différentes commandes en Java en même temps. Il existe deux façons différentes de créer un fil.
- D'une part, une certaine classe peut hériter de la classe "Thread". Par exemple, écrivez d'abord "class Loader extend Thread {". Ensuite, vous devez définir une méthode avec "public void run () {" qui décrit les fonctions du thread. Dans une autre classe, vous pouvez maintenant utiliser la commande "Loader obj = new Loader ();" pour utiliser la méthode "obj.start ();" pour démarrer le thread.
- Alternativement, vous pouvez implémenter l'interface "Runnable" dans une classe. Vous pouvez le faire avec la commande "class Loader implements Runnable {". Redéfinissez une méthode d'exécution. Vous pouvez maintenant démarrer le thread dans une autre classe avec le code "Thread t = new Thread (new Loader ());" ⮩ "t.start ();"
- Astuce: vous pouvez utiliser la commande "Thread.sleep (1000);" pour laisser le thread reposer pendant une seconde. Notez cependant que cette commande génère une exception InterruptedException.
Créer des listes en Java
Il existe deux types différents de listes en Java: la "ArrayList" et la "LinkedList".
- En règle générale, les tableaux en Java ne peuvent stocker qu'un certain nombre d'objets. Cependant, il existe une fonction appelée "ArrayList" dans l'API Java. Écrivez d'abord «import java.util.ArrayList;» pour importer le package requis. Vous pouvez maintenant utiliser la commande ArrayList colors = new ArrayList (); pour créer une nouvelle liste. Facultativement, vous pouvez utiliser la commande ArrayList colors = new ArrayList (10); pour créer une liste qui spécifie à l'avance le type et la taille des données.
- Vous pouvez maintenant ajouter quelque chose à la liste avec la commande »colours.add (" ... ");«. Avec »colours.remove (" ... ");« ce processus peut être inversé. Vous pouvez également utiliser »colours.contains (...);« pour savoir si la liste contient un certain élément ou utiliser la commande »colours.get (int x);« pour obtenir une valeur avec un certain index. Enfin, vous pouvez utiliser »colours.size ();« pour interroger le nombre d'éléments de la liste et utiliser »colours.clear ();« pour supprimer tous les éléments de la liste.
- Il existe également la "LinkedList", que vous pouvez importer avec la commande »import java.util.LinkedList;«. Les commandes sont les mêmes ici; cependant, vous devez écrire "LinkedList" à chaque fois au lieu de "ArrayList". Une ArrayList est plus appropriée pour stocker des objets accessibles ultérieurement. Vous devez utiliser une LinkedList si vous souhaitez modifier des données.
Java: utilisez HashMap
Dans les listes ci-dessus, chaque objet a un index (entier). Le HashMap est utilisé pour stocker des données avec une paire de valeurs consistant en "Clé" et "Objet".
- Vous importez le HashMap avec la commande »import java.util.HashMap;«. Comme pour les listes, vous pouvez maintenant créer un HashMap avec la commande »HashMap points = new HashMap ();«.
- Ensuite, par exemple, vous pouvez ajouter la commande »points.put (" Amy ", 154);«. La commande »System.out.println (" points.get ("Amy")); «affiche désormais la valeur 154. Encore une fois, vous pouvez utiliser des méthodes de suppression pour la supprimer.
- Un HashMap ne peut pas contenir d'objets avec deux clés identiques. Un objet serait simplement écrasé. Les méthodes "containsKey" et "containsValue" sont très pratiques et peuvent être utilisées pour vérifier si un objet ou une clé existe dans le HashMap.
- Il existe également des «ensembles de hachage». Un ensemble est une collection de valeurs, par laquelle deux valeurs identiques ne peuvent jamais exister. La commande import java.util.HashSet; est utilisée pour importer. Par exemple, vous pouvez créer un nouvel ensemble avec la commande »HashSet set = new HashSet ();«. Vous pouvez maintenant ajouter des éléments à ce HashSet avec la commande »set.add (" ... ");«. La commande »System.out.println (set);« renvoie finalement toutes les commandes de l'ensemble.
- Généralement, l'ordre des éléments dans un ensemble de hachage n'est pas maintenu de manière cohérente. Cependant, si vous le souhaitez, vous pouvez utiliser un "LinkedHashSet".
- Soit dit en passant: une table de hachage stocke des informations via un mécanisme appelé "hachage", dans lequel chaque valeur d'une clé est utilisée pour déterminer une valeur unique appelée "code de hachage". Autrement dit, cela signifie que chaque élément d'un ensemble de hachage est lié à un code de hachage.
Trier les listes et utiliser des itérateurs
Pour travailler avec des listes encore plus efficacement, vous pouvez les trier et utiliser des itérateurs.
- L'API Java inclut également la classe des collections. L'une des méthodes les plus pratiques ici est la méthode de tri. Toutes les méthodes de la classe collections sont des méthodes statiques, elles n'ont donc pas besoin d'être déclarées à nouveau. Par exemple, si vous avez créé une liste de tableaux nommée "animal", vous pouvez classer ses valeurs à l'aide de la commande Collections.sort (animal) ;. Vous pouvez importer la classe Collections avec la commande »import java.util.Collections;«.
- Un itérateur est un objet qui circule dans une collection et reçoit et peut supprimer des valeurs. Vous importez le package requis avec la commande »import java.util.iterator;«. Dans ce cas, nous avons déjà créé une LinkedList appelée "animaux". Vous pouvez maintenant définir l'itérateur avec la commande »Iterator it = animals.iterator ();«. Si vous exécutez maintenant la commande »System.out.println (it.next ());«, le premier élément de la LinkedList est sorti. Si vous exécutez à nouveau la commande, l'itérateur va plus loin et génère le deuxième élément. Ici aussi, vous pouvez supprimer des éléments avec une méthode remove. Il existe également la méthode hasNext, que vous pouvez utiliser pour vérifier si un autre élément existe.
Java: créer et utiliser des fichiers
Vous pouvez facilement créer et utiliser vos propres fichiers en Java.
- Pour ce faire, vous devez d'abord importer le package requis à l'aide de la commande "import java.io.File;". Définissez ensuite un fichier avec un chemin d'accès approprié à l'aide de la commande »File file = new File (" C: \\ data \\ input-file.txt ");«. With »if (x.exists ()) {« you can vérifiez si le fichier existe. Vous obtenez le nom du fichier avec "x.getName ()".
- Dans l'étape suivante, vous pouvez créer un nouveau scanner avec la commande »Scanner sc = nouveau Scanner (x);«. Encore une fois, vous pouvez utiliser des commandes telles que "sc.next ()" ou "sc.hasNext ()" pour lire les données d'un fichier. Cela fonctionne très bien dans une boucle while. N'oubliez pas de fermer le fichier avec "sc.close ();" à la fin.
- Pour pouvoir écrire dans des fichiers, vous devez d'abord ajouter la commande "import java.util.Formatter;" à votre code. La commande »Formatter f = new Formatter (" C: \\ CHIP \\ test.txt ");« crée maintenant un fichier nommé "test.txt" au chemin spécifié.
- Pour pouvoir écrire dans le fichier, vous pouvez utiliser la commande »f.format ("% s% s% s, "1", "Max", "Mustermann \ r \ n"); «. % s "pour une chaîne qui est remplacée par le premier paramètre, le deuxième"% s "par le deuxième paramètre, etc. Le programme passe à la ligne suivante en appuyant sur" \ r \ n ".
C'est là que se termine notre série de didacticiels sur le langage de programmation Java. Dans le prochain conseil pratique, nous vous donnerons une introduction à la programmation avec Python.