La classe String
Si vous devez utiliser JAVA pour la création d'application ou d'applet pour la gestion de données, la classe String devrai être une des classes que vous utiliserai le plus. En Java cette classe est particulièrement puissante et pratique.
Il est notamment possible de faire:
- des concaténations grâce à l'opérateur "+", cette concaténation peut se faire avec n'importe qu'elle autre variable voir classe si elle possède la fonction "toString".
Exemple:
int num =1;
String nom = "pascal"+" "+"Dupont"+" "+num;
résultat: "pascal Dupont 1"
des test d'égalités avec la fonction "equals".
Exemple:
nom.equals("toto"); //vérifie si la chaîne nom contient "toto",
//renvoie true si c'est le cas
Il existe d'autres fonctions d'égalité :
- "compareTo" renvoie -1 si la chaîne est inférieur, 0 si égal et 1 sinon.
- "startsWith" renvoie true si la chaîne en paramètre commence la chaîne.
- "endsWith" renvoie true si la chaîne en paramètre finie la chaîne.
- ... voir javadoc
- récupération d'index en fonction d'un caractère ou d'une String
_"indexOf" renvoie l'emplacement de la première occurrence
_"lastIndexOf" renvoie l'emplacement de la dernière occurrence
- des sélections d'une partie de la chaîne à l'aide de la fonction "subString"
- une recherche de la longueur avec la fonction "length"
Exemple:
nom.length();
une modification de la casse avec différentes fonctions
_"toUpperCase": met tout en majuscule
_"toLowerCase": met tout en minuscule
Exemple:
nom.toUpperCase(); //nom étant égal à "toto", sa valeur devient "TOTO"
Particularité:
elle est la seul classe à se déclarer comme un type, on peut ainsi la déclarer de la façon suivante:
String nom="tatayoyo";
|
Si vous deviez utiliser de façon intensive les objets String pour les concaténations, découpage, tout ce qui touche la chaîne de façon physique il est plus intéressant d'utiliser les objets StringBuffer et ses méthodes. Cette classe est moins gourmande en mémoire est les opérations sont réalisées plus vite.
|
Stringbuffer :
La déclaration se fait comme pour un objet classique mais pour les concaténations il existe la fonction "append" qui prend en paramètre n'importe quelle valeur et s'occupe des conversions.
Exemple:
int num =1;
StringBuffer nom = new StringBuffer("pascal");
nom.append(" ").append("Dupont").append(" ").append(num);
résultat: "pascal Dupont 1"
pour récupérer la valeur en tant que String il suffit d'appeler la fonction "toString"
Exemple:
nom.toString();