Philippe Gandy - 22 septembre 2015 Basé sur les notes de cours de Daniel Morin et Roch Leclerc.

Slides:



Advertisements
Présentations similaires
Premier programme en C :
Advertisements

La boucle for : init7.c et init71.c
Introduction au Langage C,C++
La classe String Attention ce n’est pas un type de base. Il s'agit d'une classe défini dans l’API Java (Dans le package java.lang) String s="aaa"; // s.
Algorithmique Résume.
Approfondissement du langage
(Classes prédéfinies – API Java)
JAV - TD 6 Structures de données JAVA
TD 1 IJA Introduction Objet, méthode, attribut Classe, instance
Les attributions de valeur (le signe =). Dans cette présentation, nous allons tenter de représenter ce qui se passe dans la mémoire de lordinateur quand.
Algorithme et programmation
Les bases de l’Algorithmique
Principes de programmation (suite)
Programmation orientée objet
Les méthodes en java Une méthode est un regroupement d’instructions ayant pour but de faire un traitement bien précis. Une méthode pour être utilisée.
RESUMES Module II1 SOMMAIRE CYCLE 1 : Saisir – Afficher – Données
88 Utilisation des arrays, des chaînes et des classes conteneurs.
Introduction au paradigme objet Concepts importants surcharge (overload) redéfinition (override) Définition d’une classe Définition des attributs.
Quest-ce quune classe dallocation? Une classe dallocation détermine la portée et la durée de vie dun objet ou dune fonction.
Python La programmation objet
Master 1 SIGLIS Java Lecteur Stéphane Tallard Chapitre 5 – Héritage, Interfaces et Listes génériques.
Les pointeurs Modes d’adressage de variables. Définition d’un pointeur. Opérateurs de base. Opérations élémentaires. Pointeurs et tableaux. Pointeurs et.
Structures de données IFT Abder Alikacem La classe string Département dinformatique et de génie logiciel Édition Septembre 2009 Département dinformatique.
66 Utilisation des classes et des objets. 6-2 Objectifs A la fin de ce cours, vous serez capables de : Créer de nouvelles classes à laide de Eclipse Utiliser.
Une nouvelle structure de données : les tableaux
Introduction à la programmation objet Langage Java
Sixième cours Les chaînes de caractères et le passage de paramètres par référence Passage de paramètres par référence String.h.
Principes de programmation
IFT 6800 Atelier en Technologies d’information
LIFI-Java 2004 Séance du Jeudi 9 sept. Cours 1. La notion de langage Décrire une tâche à effectuer –programme Écrire à un haut niveau –facile pour lutilisateur.
COURS DE PROGRAMMATION ORIENTEE OBJET :
COURS DE PROGRAMMATION ORIENTEE OBJET :
CSI1502 Principes fondamentaux en conception des logiciels
Les méthodes en java • Une méthode est un regroupement d’instructions ayant pour but de faire un traitement bien précis. • Une méthode pour être utilisée.
L’essentiel du langage C
4 Introduction des objets. Les chaînes et tableaux
1 Fichers Binaires, Accès Direct et Objets. 2 Données binaires. Il s'agit ici de lire et écrire des données binaires par opposition à du texte. Pour ce.
Un survol du language C.
Master 1 SIGLIS Java Lecteur Stéphane Tallard Les erreurs communes en Java.
Technologies web chapitre III : Le langage JavaScript
 Syntaxe du langage PHP
Tutorat en bio-informatique
5ième Classe (Mercredi, 19 octobre) Prog CSI2572.
Tutorat en bio-informatique Le 14 novembre Au programme… Les objets –Propriétés (attributs) –Constructeurs –Méthodes.
Master 1 SIGLIS Java Lecteur Stéphane Tallard Chapitre 3 – Classes et objets en Java Master 1 SIGLIS1 Java Lecteur - Chapitre 3 Classes et objets en Java.
Strings et Tableaux en Java
Les classes et les objets Les données finales class A { … private final int n = 20 ; // la valeur de n est définie dans sa déclaration … } class A { public.
Les types composés Les enregistrements.
Cours LCS N°4 Présenté par Mr: LALLALI
Mettre en formeExaminerManipuler Les fonctions printf() et sprintf Le traitement de chaîne de caractère La fonction printf() formate le contenu d'une chaîne.
Cours 4 (14 octobre) Héritage. Chapitre III Héritage.
Function cas(uneNoteCCouCF){ laCellule.align="center"; uneNoteCCouCF=Number(uneNoteCCouCF); if(isNaN(uneNoteCCouCF)){ return "-"; } else { if(uneNoteCCouCF>=0){return.
8PRO107 Éléments de programmation Les adresses et les pointeurs.
Classes abstraites, interface Classe interne Classes enveloppes
Scripts et fonctions Instructions de contrôle
Philippe Gandy - 1 septembre 2015 Basé sur les notes de cours de Daniel Morin et Roch Leclerc.
Algorithmique Tableaux de données
Philippe Gandy - 8 septembre 2015 Basé sur les notes de cours de Daniel Morin et Roch Leclerc.
Philippe Gandy – 6 octobre 2015 Basé sur les notes de cours de Daniel Morin et Roch Leclerc.
Philippe Gandy - 15 septembre 2015 Basé sur les notes de cours de Daniel Morin et Roch Leclerc.
Conception de Programmes - IUT de Paris - 1ère année Les classes Introduction Déclaration d’une classe Utilisation d’une classe Définition des.
Master 1 SIGLIS Java Lecteur Stéphane Tallard Correction du TD Chapitre 3.
Philippe Gandy – 10 novembre 2015 Basé sur les notes de cours de Daniel Morin et Roch Leclerc.
Philippe Gandy – 17 novembre 2015 Basé sur les notes de cours de Daniel Morin et Roch Leclerc.
Philippe Gandy – 13 octobre 2015 Basé sur les notes de cours de Daniel Morin et Roch Leclerc.
LES CLASSES ET LES OBJETS
C++ BY AURÉLIEN MODULO MARION. PLAN DES TROIS PRÉSENTATIONS C++ avancé C++ orienté objet Bases de C++
Transcription de la présentation:

Philippe Gandy - 22 septembre 2015 Basé sur les notes de cours de Daniel Morin et Roch Leclerc

 La Classe String et ses méthodes  Demo de la classe String  Demo du concept orienté objet  Demo affichage de nombres décimaux

 Cette classe, la classe String n'est pas un type élémentaire du langage, comme les types byte, short, int, long, float, double, char et boolean mais bel et bien un type abstrait.  Pour plus de détails, voir la documentation officielle de la classe StringString

 Déclaration est initialisation simultanée d'une variable de type String  String ch1 = ""; String ch2 = "Ceci est une chaîne"; String ch3 = new String( "Ceci est une autre chaîne" ); String ch4 = ch3;  Il est à noter que la chaîne ch1 existe même si elle contient une chaîne vide. La chaîne ch3 est initialisée avec une méthode qui est équivalente à la méthode avec laquelle la variable ch2 est initialisée.

 Concaténation  L'opérateur d'addition (+) placé entre un objet de type String et un autre objet de type String ou un élément d'un autre type devient un opérateur de concaténation.  String ch1 = "Allo"; String ch2 = "Salut" + ch1; System.out.println( ch2 ); //affiche SalutAllo  String ch3 = "Résultat: "; int n = 125; String ch4 = ch3 + n; System.out.println( ch4 ); //affiche Résultat:125

 Il faut faire attention que l'opérateur de concaténation est évalué de gauche à droite ainsi,  String ch1 = "Résultat:"; int n1 = 5; int n2 = 4; System.out.println( ch1 + n1 + n2 ); //affiche Résultat:54  alors que  System.out.println( ch1 + (n1 + n2) ); //affiche Résultat:9  puisque dans ce cas, le contenu des parenthèses est évalué avant.

 Il est possible de déterminer la longueur, c'est-à-dire le nombre de caractères, que contient une chaîne, en utilisant la méthode length de la classe String.  String ch1 = "Java est facile"; System.out.println( ch1.length() ); //affiche 15  Il est à noter que les séquences d'échappement (\n, \t, \r) ne comptent que pour un seul caractère.  String ch1 = "Allo\nAllo"; System.out.println( ch1.length() ); //affiche 9 String ch2 = "\"Yo\""; System.out.println( ch2 + " : " + ch2.length() ); //Affiche "Yo" : 4

 Les éléments d'information de type String étant des objets, il n'est pas possible de vérifier si deux chaînes de caractères sont identiques en utilisant l'opérateur de comparaison (==) comme on le fait avec des éléments de types fondamentaux. Pour vérifier que deux chaînes contiennent les mêmes caractères on doit utiliser la méthode equals ou la méthodeequalsIgnoreCase,

 if( chaine.equals( autreChaine ) ) { //Ce code est exécuté si les deux chaînes sont identiques, incluant la casse. }  if( chaine.equalsIgnoreCase( "Oui" ) ) { //Ce code est exécuté si la chaîne contient les mots Oui, OUI, OuI //ou toute autre variation du mot oui, sans égard à la casse. }

 Il est possible d'accéder aux caractères individuels d'un objet de type String par le bias de la méthode charAt. Cette méthode doit être appelée par un objet de type String et recevoir en paramètre l'indice du caractère désiré. Il faut faire attention que les chaînes de caractère en Java sont indicées à partir de 0 ainsi, le premier caractère est à la position 0 dans la chaîne.

 String chaine = "Java est facile!"; System.out.println( chaine.charAt( 0 ) ); //affiche J System.out.println( chaine.charAt( 2 ) ); //affiche v System.out.println( chaine.charAt( chaine.length() - 1 ) ); //affiche !

 Il est possible de modifier la casse des caractères d'une chaîne et utilisant les méthodes toUpperCase et toLowerCase de la classe String. Il est à noter que la classe String étant immuable, l'utilisation d'une telle méthode n'a aucun effet sur l'objet appelant, ainsi,  chaine.toUpperCase();  n'a aucun effet sur la chaîne de caractères puisque la méthode toUpperCase ne modifie en rien l'objet appelant mais renvoie plutôt une nouvelle chaîne contenant les mêmes caractères mais cette fois, toute en majuscules.  Si on veut changer réellement l'objet appelant, il faut faire,  chaine = chaine.toUpperCase();

 String ch = "JAVA est facile."; System.out.println( ch.toLowerCase() ); //affiche java est facile. System.out.println( ch ); //affiche JAVA est facile. ch = ch.toUpperCase(); System.out.println( ch ); //affiche JAVA EST FACILE.

 On peut déterminer la position d'un caractère ou d'une sous-chaîne dans une chaîne de caractères en ayant recours à la méthode indexOf. Cette dernière revoie l'indice de la première occurence de la chaîne ou du caractère reçu en paramètre. Si la chaîne ou le caractère reçu en paramètre ne se trouve pas dans la chaîne appelante, la méthode renvoie la valeur -1.

 String chaine = "Bonjour la police"; int n1 = chaine.indexOf( 'j' ); int n2 = chaine.indexOf( "police" ); int n3 = chaine.indexOf( 'Yo' ); System.out.println( n1 + " : " + n2 + " : " + n3 ); //affiche 3 : 11 : -1

 Il est aussi possible de composer les méthodes et faire comme ceci,  int n4 = chaine.toLowerCase().indexOf( "bonjour" ); //affiche 0  Il est possible de simplement déterminer si une sous-chaîne est présente ou non dans un chaîne en utilisant la méthodecontains.  if( chaine.toLowerCase().contains( "police" ) ) { System.out.println( "La chaîne contient le mot police, sans égard à la casse." ); }

 Les méthodes replace permettent de remplacer toutes les occurences d'un caractère par un autre ou toutes les occurences d'une chaîne par une autre.  String chaine = "Éléphant"; chaine = chaine.replace( 'é', 'e' ); System.out.println( chaine ); //affiche Élephant chaine.replace( "phant", "cteur" ); System.out.println( chaine ); //affiche Électeur chaine.replace( "e", "" ); System.out.println( chaine ); //affiche Élctur

 Les méthodes startsWith et endsWith servent à déterminer si une chaîne de caractères commence ou se termine par une sous-chaîne donnée.  String chaine = JOptionPane.showInputDialog( "Voulez- vous continuer" ); if( chaine.toLowerCase().startsWith ( "o" ) ) { //Passe ici si l'utilisateur a entré quoi que ce soit qui commence par o ou O. } String nomFichier = JOptionPane.showInputDialog( "Nom du fichier:" ); if( nomFichier.toLowerCase().endsWith( ".png" ) ) { //Passe ici si le fichier a une extension.png. }

 On peut extraire une sous-chaîne d'une chaîne à partir des deux versions de la méthode substring de la classe String.  String chaine = "Bonjour la police"; String ch1 = chaine.substring( 8 ); //à partir de l'indice 8 String ch2 = chaine.substring( 8,10 ); //à partir de l'indice 8 jusqu'à l'indice 9 System.out.println( ">" + ch1 + " la police " + ch2 + " la<  Il est à remarque que la version de substring qui reçoit 2 paramètres considère le premier paramètre comme indice inclusif et le second comme un indice exclus. Dans l'exemple précédent, pour la sous-chaîne ch2 le caractère à la position 8 est inclu dans la sous-chaîne extraite mais pas le caractère à la positions 10.

 Il est à noter que si un des indices est incorrect, la machine virtuelle lancera une exception de type StringIndexOutOfBoundsException.  String chaine = "Java est facile"; String ch3 = chaine.substring( 8, 3 ); //StringIndexOutOfBoundsException String ch4 = chaine.substring( 20 ); //StringIndexOutOfBoundsException