Programmation - A. Cohen
Cours

Les chaînes

Introduction

Java ne possède pas de type chaîne prédéfini

La bibliothèque Java standard contient une classe prédéfinie String

Chaque chaîne entre guillemets est une instance de la classe String

String v = "" ;

// chaîne vide

String erreur = "phrase incomplète" ;

Possibilité de concaténer des chaînes

String type_erreur = "pb écriture" ;

String support = "sur disque" ;

String messsage = type_erreur + support ;

int num_erreur = 104 ;

System.out.println("Le numéro d'erreur est " + num_erreur);

Remarque :

Pour créer un objet String, l'utilisation de l'opérateur new n'est pas obligatoire

Une String est implémentée comme un tableau constant de caractères;

On ne modifie pas la classe String mais on crée un nouvel objet String.

Manipulation des chaînes

Voici Quelques exemples de méthodes de la classe String :

  • int length()

  • char charAt(int ind)

  • boolean equals(String s)

  • int indexOf(char c)

  • String substring(int début,int fin)

  • String substring(int début)

  • String trim()

  • La méthode substring de la classe String permet d'extraire une sous-chaîne d'une chaîne (1er élément en position 0)

String erreur = "phrase incomplète" ;

String s = erreur.substring(0, 4) ;

//val de s = "phra"

  • La méthode length permet de connaître la longueur d'une chaîne

String type_erreur = "pb écriture" ;

int long = type_erreur.length() ; // val de long = 11

  • La méthode charAt retourne un caractère d'une chaîne

//s.charAt(n) retourne le caractère situé à la position n,

//n a une valeur comprise entre 0 et s.length() - 1

String type_erreur = "pb écriture" ;

char last = type_erreur.charAt(10)

Remarque : Test d'égalité

Il faut utiliser la méthode equals pour savoir si deux chaînes sont égales

nom.equals(temp) ;

// donne true si les chaînes nom et temp sont égales

// nom et temp peuvent être des variables ou des constantes chaînes

String maChaine = "Bonjour!";

maChaine.equals("Bonjour!");

// Renvoi vrai

Cette instruction est parfaitement valide et retourne vrai dans ce cas

Attention : L'opérateur ==

L'opérateur == ne permet pas de tester l'égalité de deux chaînes !!

L'opérateur == permet juste de voir si les deux chaînes sont au même emplacement mémoire

Programmation orientée objet (page suivante)Les tableaux (page Précédente)
AccueilImprimerRéalisé avec SCENARI