Table des matières Au sujet de l auteur 1 Introduction 3 édition revue et corrigée avec Java SE 7 7 1 Les bases 11 Compiler un programme Java 13 Exécuter un programme Java 14 Définir le chemin de classe 15 2 Interaction avec l environnement 17 Obtenir des variables d environnement 18 Définir et obtenir des propriétés système 19 Parser des arguments en ligne de commande 20 3 Manipulation de chaînes 23 Comparer des chaînes 24 Rechercher et récupérer des sous-chaînes 27 Traiter une chaîne caractère par caractère 28 Renverser une chaîne par caractère 29 Renverser une chaîne par mot 29 Convertir une chaîne en majuscules ou en minuscules 31 Supprimer les espaces au début et à la fin d une chaîne 32 Parser une chaîne séparée par des virgules 32
IV Java 4 Travail avec des structures de données 35 Rechercher une valeur dans un tableau trié 37 Redimensionner un tableau 38 Parcourir une collection en boucle 40 Stocker puis trier une liste 41 Convertir une collection en un tableau 43 Définir une collection de type E donné 43 Insérer des objets dans une collection de type E donné 45 Parcourir une liste paramétrée 46 Trouver un objet dans une collection de type E donné 46 5 Dates et heures 49 Retrouver la date d aujourd hui 50 Convertir les objets Date et Calendar 51 Imprimer une date/une heure dans un format spécifié 52 Parser des chaînes en dates 55 Additionner et soustraire avec des dates ou des calendriers 56 Calculer la différence entre deux dates 57 Comparer des dates 58 Retrouver le jour de la semaine/du mois/de l année ou le numéro de la semaine 59 Calculer une durée écoulée 60 6 Retrouver des motifs avec des expressions régulières 63 Les expressions régulières en Java 64 Retrouver une portion de texte à l aide d une expression régulière 66 Remplacer du texte mis en correspondance 68
Table des matières V Retrouver toutes les occurrences d un motif 70 Imprimer des lignes contenant un motif 72 Retrouver des caractères de nouvelle ligne dans du texte 73 7 Nombres 75 Vérifier si une chaîne est un nombre valide 76 Comparer des nombres à virgule flottante 77 Arrondir des nombres à virgule flottante 79 Formater des nombres 80 Formater des devises 82 Convertir un entier en nombre binaire, octal et hexadécimal 82 Générer des nombres aléatoires 83 Calculer des fonctions trigonométriques 85 Calculer un logarithme 85 8 Entrée et sortie 87 Lire du texte à partir d une entrée standard 88 Écrire vers une sortie standard 89 Formater la sortie 89 Ouvrir un fichier par son nom 94 Lire un fichier dans un tableau d octets 95 Lire des données binaires 96 Atteindre une position dans un fichier 97 Lire une archive JAR ou ZIP 97 Créer une archive ZIP 98 9 Travail avec des répertoires et des fichiers 101 Créer un fichier 102 Renommer un fichier ou un répertoire 103 Supprimer un fichier ou un répertoire 104
VI Java Modifier des attributs de fichier 105 Obtenir la taille d un fichier 106 Déterminer si un fichier ou un répertoire existe 107 Déplacer un fichier ou un répertoire 107 Obtenir un chemin de nom de fichier absolu à partir d un chemin relatif 109 Déterminer si un chemin de nom de fichier correspond à un fichier ou à un répertoire 110 Lister un répertoire 111 Créer un répertoire 114 10 Clients réseau 117 Contacter un serveur 118 Retrouver des adresses IP et des noms de domaine 119 Gérer les erreurs réseau 120 Lire du texte 121 Écrire du texte 122 Lire des données binaires 123 Écrire des données binaires 124 Lire des données sérialisées 126 Écrire des données sérialisées 127 Lire une page web via HTTP 128 11 Serveurs réseau 131 Créer un serveur et accepter une requête 132 Retourner une réponse 133 Retourner un objet 134 Gérer plusieurs clients 136 Servir du contenu HTTP 138
Table des matières VII 12 Envoi et réception d e-mails 141 Vue d ensemble de l API JavaMail 142 Envoyer des e-mails 142 Envoyer des e-mails MIME 145 Lire un e-mail 147 13 Accès aux bases de données 151 Se connecter à une base de données via JDBC 152 Envoyer une requête via JDBC 154 Utiliser une instruction préparée 156 Récupérer les résultats d une requête 158 Utiliser une procédure stockée 159 14 XML 163 Parser du XML avec SAX 165 Parser du XML avec DOM 167 Utiliser une DTD pour vérifier un document XML 169 Créer un document XML avec DOM 171 Transformer du XML avec des XSLT 173 15 Utilisation de threads 175 Lancer un thread 176 Arrêter un thread 178 Attendre l achèvement d un thread 180 Synchroniser des threads 181 Suspendre un thread 184 Lister tous les threads 186
VIII Java 16 Programmation dynamique par réflexion 189 Obtenir un objet Class 190 Obtenir un nom de classe 192 Découvrir des modificateurs de classe 192 Trouver des superclasses 193 Déterminer les interfaces implémentées par une classe 194 Découvrir des champs de classe 195 Découvrir des constructeurs de classe 197 Découvrir des informations de méthode 198 Retrouver des valeurs de champ 200 Définir des valeurs de champ 201 Invoquer des méthodes 203 Charger et instancier une classe dynamiquement 204 17 Empaquetage et documentation des classes 207 Créer un paquetage 208 Documenter des classes avec JavaDoc 211 Archiver des classes avec Jar 213 Exécuter un programme à partir d un fichier JAR 214 18 Les nouveautés de Java SE 7 217 L instruction switch 219 Le nouveau package java.nio.file 220 Gérer les exceptions 223 Gérer automatiquement les ressources 224 Index 227