Version sans JavaScript, en lecture seule : les ateliers, les quiz et l’exécution du code n’y sont pas. Version complète · Catalogue · Se connecter

Support de cours · chapitre 10

Chaînes de caractères

String est un objet, pas un type primitif, et ça change tout.

Les chaînes de caractères sont entourées de guillemets ("), tandis que les caractères sont entourés d’apostrophes (').

11 Opérations usuelles

Le type associé est String. On peut réaliser des affectations et des concaténations (= et +) ; le new est facultatif lors de la déclaration.

  • La taille d’une chaîne est renvoyée par chaine.length(), avec des parenthèses, contrairement aux tableaux.
  • Le test d’égalité se fait par equals (ou equalsIgnoreCase si la casse vous importe peu).
  • On obtient le n-ième caractère avec charAt.
String maChaine = "Bonjour chers etudiants !";
for (int i = 0; i < maChaine.length(); i++) {
    System.out.println(maChaine.charAt(i));
}

== compare les références, equals compare le contenu

public class Demo {
    public static void main(String[] args) {
        String a = "java";
        String b = "java";
        String c = new String("java");

        System.out.println("a == b       : " + (a == b));       // true : meme objet mis en cache
        System.out.println("a == c       : " + (a == c));       // false : deux objets differents
        System.out.println("a.equals(c)  : " + a.equals(c));    // true : meme contenu
        System.out.println("equalsIgnoreCase : " + a.equalsIgnoreCase("JAVA"));

        System.out.println("longueur     : " + a.length());
        System.out.println("3e caractere : " + a.charAt(2));
        System.out.println("majuscules   : " + a.toUpperCase());
        System.out.println("concatenation : " + a + " " + 8);
    }
}