J'ai une ficelle comme
"I am a boy".
Je veux imprimer comme ça
"I
am
a
boy".
Quelqu'un peut-il m'aider?
System.out.println("I\nam\na\nboy");
System.out.println("I am a boy".replaceAll("\\s+","\n"));
System.out.println("I am a boy".replaceAll("\\s+",System.getProperty("line.separator"))); // portable way
Vous pouvez également utiliser
System.lineSeparator()
:la source
System.getProperty("line.separator")
.String x = "Hello, %n there";
. Ajout d'espaces%n
juste pour des raisons de lisibilité.Exemple
Production
Explication
Il est préférable de l'utiliser
%n
comme caractère de nouvelle ligne indépendant du système d'exploitation au lieu de\n
et c'est plus facile que d'utiliserSystem.lineSeparator()
Pourquoi l'utiliser
%n
, car sur chaque OS, la nouvelle ligne se réfère à un ensemble différent de caractère (s);LF est l'acronyme de Line Feed et CR est l'acronyme de Carriage Return . Les caractères d'échappement sont écrits entre parenthèses. Ainsi, sur chaque OS, la nouvelle ligne représente quelque chose de spécifique au système.
%n
est indépendant du système d'exploitation, il est portable. Cela signifie\n
sur les systèmes Unix ou\r\n
sur les systèmes Windows et ainsi de suite. Ainsi, n'utilisez pas, utilisez\n
plutôt%n
.la source
Cela peut être fait de plusieurs manières. Je mentionne 2 façons simples.
Manière très simple comme ci-dessous:
Cela peut également être fait avec la concaténation comme ci-dessous:
la source
Essayer:
la source
Pour rendre le code portable sur n'importe quel système, j'utiliserais:
Ceci est important car différents OS utilisent des notations différentes pour la nouvelle ligne: Windows utilise "\ r \ n", Classic Mac utilise "\ r", et Mac et Linux utilisent tous les deux "\ n".
Commentateurs - veuillez me corriger si je me trompe sur ce point ...
la source
\n
est utilisé pour créer une ligne séparée;Exemple:
Résultat:
la source
Si vous souhaitez simplement imprimer une nouvelle ligne dans la console, vous pouvez utiliser «\ n» pour les nouvelles lignes.
Si vous souhaitez casser du texte dans les composants swing, vous pouvez utiliser html:
la source
Si vous voulez que votre code ne soit pas spécifique, vous devez utiliser println pour chaque mot
car Windows utilise "\ r \ n" comme nouvelle ligne et les systèmes unixoïdes utilisent simplement "\ n"
println utilise toujours le bon
la source
println()
ajoute un caractère de nouvelle ligne à la fin de la chaîne (pas au début).System.lineSeparator()
ouSystem.getProperty("line.separator")
peut être utilisé pour rendre le système de code indépendant.Qu'en est-il d'
%n
utiliser un formateur commeString.format()
?:Comme le dit cette réponse , il est disponible à partir de java 1.5 et est un autre moyen de
System.getProperty("line.separator")
ouSystem.lineSeparator()
et, comme celui-ci, est indépendant du système d'exploitation .la source
finalString = "bandham" + System.lineSeparator() + "manikanta"; System.out.println(finalString);
Production:
bandham manikanta
la source
Exemple de programme complet, avec une touche amusante:
Ouvrez un nouveau document vierge et enregistrez-le sous
%yourJavaDirectory%/iAmABoy/iAmABoy.java
. "iAmABoy" est le nom de la classe.Collez le code suivant et lisez-le. N'oubliez pas que je suis un débutant, donc j'apprécie tous les commentaires!
Maintenant, dans terminal / cmd, recherchez
%yourJavaDirectory%/iAmABoy
et tapez:Vous pouvez remplacer les arguments
I am a boy
par n'importe quoi!la source
args
directement ànlSeparated()
ou fairenlSeparated()
prendre un scalaireString
au lieu d'un tableau. La première option est probablement meilleure. Imprimez également votre signature avecprintln
au lieu deprint
.main
, remplacezfor (String arg : args) { nlSeparated(arg); }
par justenlSeparated(args);
.nlSeparated
accepte déjà une liste deString
s. Pour une meilleure explication, voir ici: stackoverflow.com/a/12534579/2988730Optez pour une scission.
la source
System.out.println ("Je \ nam \ na \ nboy");
Cela fonctionne Il donnera également un caractère d'espace avant d'entrer le caractère
la source
J'utilise ce code
String result = args[0].replace("\\n", "\n");
avec le terminal, je peux utiliser arg
I\\nam\\na\\boy
pourSystem.out.println
imprimerla source
vous pouvez utiliser la
<br>
balise dans votre chaîne pour afficher dans les pages htmlla source