Strings et Tableaux en Java

Slides:



Advertisements
Présentations similaires
SI3 MAM3 Hydro Nathan Cohen Igor Litovsky Christophe Papazian
Advertisements

Introduction à la Programmation Orientée Objet Retour sur les principaux concepts SI3 MAM3 Hydro Nathan Cohen
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.
Approfondissement du langage
(Classes prédéfinies – API Java)
C.
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
Regrouper des éléments de même type et pouvoir y accéder à laide dun identificateur et dun indice. Objectif des tableaux.
Cours 7 - Les pointeurs, l'allocation dynamique, les listes chaînées
Structures de données linéaires
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.
Langage Oriente Objet Cours 4.
88 Utilisation des arrays, des chaînes et des classes conteneurs.
8PRO100 Éléments de programmation Allocation dynamique de la mémoire.
Principes de programmation (suite)
Introduction au paradigme objet Concepts importants surcharge (overload) redéfinition (override) Définition d’une classe Définition des attributs.
Les Classes les structures en C (struct) regroupent des variables : structuration de l'analyse mais problèmes de cohérence problèmes de sécurité d'accès.
77 Utilisation des classes (suite). 7-2 Objectifs A la fin de ce cours, vous serez capables de : Définir des méthodes surchargées dans une classe Fournir.
Python La programmation objet
Langage Oriente Objet Cours 2.
Master 1 SIGLIS Java Lecteur Stéphane Tallard Chapitre 5 – Héritage, Interfaces et Listes génériques.
Les pointeurs Enormément utilisé en C/C++ ! Pourquoi? A quoi ça sert?
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 Orientée Objet Retour sur les principaux concepts SI3 MAM3 Hydro Nathan Cohen
Rappels Java.
IFT 6800 Atelier en Technologies d’information
1 IFT 6800 Atelier en Technologies dinformation Le langage de programmation Java chapitre 3 : Classes et Objects.
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
CSI 1502 Principes fondamentaux de conception de 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.
1212 Entrée et sortie de fichiers Objectifs À la fin de ce cours, vous serez capables de : • Lire à partir de la console • Écrire sur la console.
L’essentiel du langage C
Cours 7 Divers et exceptions. Chapitre V Enumeration, tableaux, conversion de types, noms.
Le langage C Structures de données
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.
Programmation en Java Tableaux NGUYEN Thi Minh Tuyen
Programmation objet La base.
Labo 4 : Les structures et les entrées et sorties
Cours Les flux ou streams. Cours 162 Flux : objet possédant des méthodes capables de lire ou écrire des flots d’octets sur tout support (mémoire,
Technologies web chapitre III : Le langage JavaScript
Master 1 SIGLIS Java Lecteur Stéphane Tallard Chapitre 1 – Objets et Classes Master 1 SIGLIS1Java Lecteur - Chapitre 1 Objets et classes.
Tutorat en bio-informatique
Entrées / Sorties.
Constructeurs H Batatia. Variable statique Une variable statique est partagée par tous les objets d’une classe.
Réaliser par: Sadok Amel Cheboui hassiba
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.
Les classes présenté par: RAHMOUNE RIME / ZEKRI SELMA.
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.
Cours LCS N°4 Présenté par Mr: LALLALI
IUT du Limousin L.U.P Michel Vergnaud Programmation Objet - Java.
ITI Lab # 11 Adapté de versions antérieures créées par: Daniel Amyot et Alan Williams.
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.
8PRO107 Éléments de programmation Les tableaux. Étude de cas 1 Description du problème : Lire une liste d’entiers et l’afficher d’abord dans le même ordre.
Exercices.
pour les programmeurs en C++ Java 2 Part 1 3 Histoire de Java Projet de connexion des machines: 1991 Le nom Java a été introduit dans un café Développé.
Philippe Gandy - 22 septembre 2015 Basé sur les notes de cours de Daniel Morin et Roch Leclerc.
Master 1 SIGLIS Java Lecteur Stéphane Tallard Correction du TD Chapitre 3.
LES CLASSES ET LES OBJETS
C++ BY AURÉLIEN MODULO MARION. PLAN DES TROIS PRÉSENTATIONS C++ avancé C++ orienté objet Bases de C++
Informatique 2A Langage C 5ème séance. Déroulement de la séance 5 1 ère partie Étude des chaînes de caractères 2 ème partie Les structures 3.
Transcription de la présentation:

Strings et Tableaux en Java H Batatia

Objets particuliers Dans Java les chaînes de caractères et les tableaux sont des objets particuliers dans la forme de leur déclaration dans la manière de les créer

String Java vient avec deux classes pour créer et manipuler des chaînes String : crée des objets de taille fixe, leur création est flexible à utiliser quand les chaînes n'ont pas besoin de changer StringBuffer : crée des objets dont la taille peut varier à utiliser quand vous avez besoin d'insérer, substituer…des caractères

classe String Constructeurs public String() public String(String value) public String(char[] value) public String(StringBuffer buffer) Méthodes de classe public static String copyValueOf(char[] data) public static String valueOf(Object data) public static String valueOf(boolean b) public static String valueOf(char c) public static String valueOf(int i) public static String valueOf(long l) public static String valueOf(float f) public static String valueOf(double d) Méthode d'instance public char charAt(int index) public int compareTo(String str) public boolean equals(Object o) public boolean equalsIgnoreCase(String str) public int indexOf(int ch) public int indexOf(String str) public int lastindexOf(int ch) public int lastIndexOf(String str) public int length() public String replace(char old,char new) public String substring(int i) public String toLowerCase() public String toString(); public String toUpperCase() public String trim()

Déclaration d'un String String ref; Cette instruction crée une variable ref qui contient null; L'objet de type String n'existe pas encore.

Création d'un objet de type String Par initialisation soit String s; s = "Une chaîne"; ou String s = "Une autre chaîne"; Par opérateur new s = new String(); String s = new String(); String s = new String ("ma chaîne");

Les objets String sont immuables Après sa création, le contenu d'un objet String ne peut pas changer aucune méthode ne peut changer ses caractères Attention! la référence à un objet String peut changer pour pointer vers un autre String String s = "Ceci"; s = "Cela"; p = "Ceci et "; p = p + s; s Ceci Cela p Ceci et Ceci et cela

Exercice Utilisez les méthodes length() et charAt() Ecrire un programme Java permettant de lire une chaîne (exemple « lire chaîne ») inverse la chaîne (exemple « enîahc eril ») imprime la chaîne inversée Utilisez les méthodes length() et charAt()

Exercice Utilisez les méthodes length() , indexOf() Ecrire un programme Java permettant de lire une chaîne Compter le nombre et la position des espaces Afficher le nombre et les positions des espaces Utilisez les méthodes length() , indexOf()

Exercice Utiliser les méthodes suivantes : Ecrire un programme Java permettant de lire une phrase inverse chaque mot de la phrase imprime les mots inversés Utiliser les méthodes suivantes :

méthodes de String pour l'inversion de chaînes public int indexOf (int car) renvoie l'indice du caractère donné (-1 s'il n'existe pas) public int indexOf (int car, int enPartantDe) renvoie l'indice du caractère donné (-1 s'il n'existe pas) mais en commençant la recherche à partir de l'indice enPartantDe public String substring (int indexDebut, int indexFin) retourne la sous-chaîne comprise entre les indices indexDebut et indexFin public String trim(); retourne la chaîne en ayant supprimer tous les espaces au début et à la fin

Exercice Ecrivez un programme java qui se compose d'un codeur et d'un décodeur de texte le codeur inverse les mots du texte et ajoute une base (un nombre entier aléatoire) à chaque caractère le décodeur retranche la base et inverse les mots du texte

Tableaux Des objets de type particulier Il n'existe pas de classe pour manipuler les objets tableaux Déclaration type [] variable; Exemple int [] var; String [] args; La déclaration ne crée pas l'objet. var et args sont null Le nombre d'éléments d'un tableau est obtenu par l'attribut public var.length args.length

création de tableaux de primitifs L'objet tableau de primitif peut être créé soit par initialisation à la déclaration int [] tab = {1, 2, 3, 4}; soit à l'aide de l'opérateur new int [] tab; tab = new int [10]; la création du tableau initialise tous les éléments à 0 Les éléments du tableau sont indexés à partir de 0 tab[0], tab[1]…

tableau d'entiers: illustration (1) int [] tab = new int [4]; tab[0] tab[1] tab tab[2] tab[3]

tableau d'entiers: illustration (2) int [] tab = new int[4]; for(int i=1;i<5;i++) tab[i-1] = i; 1 2 3 4 tab[0] tab[1] tab tab[2] tab[3]

Exercice Ecrire une classe Tableau qui contient un tableau d'entier et les méthodes : getElement(int i) : retourne l'élément i setElement(int i, int v) : place v dans l'élément i getMax() : retourne le plus grand élément getMin() : retourne le plus petit élément Ecrire une classe de test pour vérifier le fonctionnement de la classe Tableau

Création d'un tableau de chaînes Un tableau de chaînes peut être créé soit par initialisation String [] tab = {"un", "deux", "trois"}, soit par l'opérateur new String [] tab = new String[5]; l'objet tab

tableau de chaînes: illustration (1) String [] tab = new String [4]; null tab[0] tab[1] tab tab[2] tab[3]

tableau de chaînes: illustration (2) for(int i=0;i<4;i++) tab[i] = "élément" + i; élément 0 élément 1 élément 2 élément 3 tab[0] tab[1] tab tab[2] tab[3]

Exemple : tableau de chaînes public class Arguments { public static void main(String[] args) { for (int i=0;i<args.length;i++) System.out.println("args[" + i + "] = " + args[i]); }

Exercices Ecrire une classe Nombre qui décrit un nombre en toutes lettre et contient une méthode valeur qui calcule la valeur décimale de ce nombre (exemple huit cent soixante dix) et écrit le nombre en chiffres (exemple 870) Ecrire une classe de Test qui prend en argument le nombre en lettre et affiche le nombre en chiffre

Tableau à plusieurs dimensions Déclaration type [][] var; Création type [][] var = new type[n][m]; Exemple int[][] m = new int[10][8]; Longueur m.lenght //nombre de lignes m[5].length //nombre de colonnes de la ligne 6

Exercice Ecrire une classe Matrice ayant n x m éléments (privés). La matrice doit avoir un constructeur, une méthode getNbLignes() qui retourne le nombre de lignes une méthode getNbColonnes() qui retourne le nombre de colonnes une méthode getMij(int i, int j) qui retourne l'élément M[i][j] une méthode addition (Matrice t) qui teste la faisabilité de l'addition et retourne un nouvel objet Matrice résultat de l'addition une méthode multiplier (Matrice t) qui teste la faisabilité de la multiplicité et retourne un nouvel objet Matrice résultat de la multiplication Créer une classe Test avec un main qui lit les éléments de deux matrices et calcule (si possible) leur somme et leur produit.

StringBuffer Contructeurs StringBuffer() StringBuffer(int length) StringBuffer(String str) Méthodes d'instances public synchronized StringBuffer append(Object obj) public synchronized StringBuffer append(String str) public synchronized StringBuffer append(char[] str) public StringBuffer append(boolean b) public synchronized StringBuffer append(char c) public StringBuffer append(int i) public StringBuffer append(long l) public StringBuffer append(float f) public StringBuffer append(double d) public synchronized StringBuffer insert(int ,Object obj) throws StringIndexOutOfBoundsException public synchronized StringBuffer insert(int ,String str) public synchronized StringBuffer insert(int ,char[] str) throws StringIndexOutOfBoundsException public StringBuffer insert(int ,boolean b) public synchronized StringBuffer insert(int ,char c) public StringBuffer insert(int ,int i) public StringBuffer insert(int ,long l) public StringBuffer insert(int ,float f) public StringBuffer insert(int ,double d) public int length() synchronized void set CharAt(int index,char ch) throws exception StringIndexOutOfBoundsException synchronized void setLength(innt newlength)