HOWTO · Java

Comment insérer une tabulation en Java

Apprenez à insérer une tabulation horizontale en Java avec la séquence d’échappement , Unicode U+0009 et des alternatives de construction de chaînes.

Sur cette page

Pour insérer une tabulation horizontale entre des valeurs textuelles en Java, placez la séquence d’échappement \t dans un littéral de chaîne. La tabulation fait passer le texte suivant au taquet de tabulation suivant ; l’espacement affiché dépend du programme qui présente la sortie.

Exécutez cet exemple :

Insérer une tabulation en Java avec la séquence d’échappement \t

La barre oblique inverse suivie de t forme une seule séquence d’échappement dans le code source Java. Java la convertit en caractère de tabulation lors de la création de la chaîne ; placez-la donc à l’endroit où la tabulation doit apparaître :

public class TabExample {
  public static void main(String[] args) {
    System.out.println("Name:\tAda");
  }
}

Le programme écrit Name:, une tabulation horizontale, puis Ada sur une seule ligne. Le terminal, l’éditeur ou toute autre surface de sortie détermine la largeur des taquets de tabulation ; l’espace visible n’équivaut donc pas à un nombre fixe d’espaces.

Insérer une tabulation en Java avec un caractère Unicode

La tabulation horizontale est le point de code Unicode U+0009. Java reconnaît aussi l’échappement Unicode \u0009 dans le code source ; concaténez-le entre deux valeurs pour y placer une tabulation. La référence des caractères Unicode apporte davantage de contexte. Unicode est une norme d’encodage des caractères, mais ne définit pas un encodage fixe sur 16 bits pour chaque caractère.

Cet exemple complet utilise l’échappement Unicode entre les deux valeurs. Sa sortie contient une tabulation horizontale, dont la largeur affichée dépend des taquets de tabulation de la surface de sortie.

public class TabExample {
  public static void main(String[] args) {
    String tab = "\u0009";
    System.out.println("Name:" + tab + "Ada");
  }
}
Name:	Ada

Dans les chaînes Java ordinaires, "\t" est la forme plus courte et familière du même caractère de tabulation horizontale.

Utiliser String.format pour aligner du texte avec des espaces en Java

String.format met en forme les valeurs selon une chaîne de format. Une largeur de champ complète une valeur trop courte avec des espaces ; elle n’insère pas de caractère de tabulation. Cet exemple complet donne à Name: une largeur minimale de dix caractères : cinq espaces apparaissent donc avant Ada.

public class TabExample {
  public static void main(String[] args) {
    String formatted = String.format("%-10s%s", "Name:", "Ada");
    System.out.println(formatted);
  }
}
Name:     Ada

Utilisez \t si les données doivent contenir une véritable tabulation. Choisissez les largeurs de champ lorsque le format voulu repose sur des espaces. Dans les deux cas, les colonnes affichées peuvent sembler irrégulières avec une police proportionnelle ou lorsque les valeurs dépassent la largeur choisie.

Insérer une tabulation en Java avec StringBuilder ou StringBuffer

Pour assembler une chaîne à partir de plusieurs éléments, ajoutez la tabulation au point de jonction. Cet exemple montre la même construction avec les deux classes ; chacune ajoute '\t' entre Name: et Ada.

public class TabExample {
  public static void main(String[] args) {
    StringBuilder builder = new StringBuilder();
    builder.append("Name:").append('\t').append("Ada");
    System.out.println(builder);

    StringBuffer buffer = new StringBuffer();
    buffer.append("Name:").append('\t').append("Ada");
    System.out.println(buffer);
  }
}
Name:	Ada
Name:	Ada

StringBuffer synchronise ses opérations ; StringBuilder ne le fait pas. Faites votre choix selon que les opérations sur le tampon doivent être synchronisées, sans supposer que l’une des classes est toujours plus rapide. Les deux conviennent à la construction progressive de chaînes ; pour une courte chaîne fixe, concaténer les valeurs avec "\t" est plus simple. La largeur affichée de la tabulation dépend toujours de la surface de sortie.

Insérer une tabulation en Java avec plusieurs instructions System.out.print

Appelez System.out.print pour chaque élément afin de le garder sur la ligne en cours, puis utilisez println pour la dernière valeur afin de terminer la ligne. La tabulation insérée entre les appels avance jusqu’à un taquet choisi par la surface de sortie :

public class TabExample {
  public static void main(String[] args) {
    System.out.print("Name:");
    System.out.print('\t');
    System.out.println("Ada");
  }
}
Name:	Ada

Cette méthode est pratique lorsque les éléments sont produits séparément ; pour une expression unique, une chaîne contenant \t est plus concise.

Conclusion

Utilisez \t pour insérer une tabulation horizontale littérale dans une chaîne Java. U+0009 et \u0009 désignent le même caractère de tabulation, tandis que les largeurs de champ de String.format ajoutent des espaces pour un alignement simple. StringBuilder, StringBuffer et plusieurs appels d’impression permettent d’insérer la tabulation pendant la construction ou l’écriture du texte par morceaux. La distance visible jusqu’à la valeur suivante dépend des taquets de tabulation de l’environnement de sortie.