Comment puis-je imprimer Java "Hello"
?
Quand je tape System.out.print("Hello");
la sortie sera Hello
. Ce que je recherche, c’est "Hello"
avec les guillemets (""
).
System.out.print("\"Hello\"");
Le caractère de citation double doit être échappé avec une barre oblique inverse dans un littéral de chaîne Java. Parmi les autres personnages nécessitant un traitement spécial, citons:
"\r"
et "\n"
"\\\\"
"\'"
"\t"
et "\f"
La liste complète des échappements littéraux de caractères et de chaînes de caractères Java est disponible dans la section section 3.10.6 du JLS.
Il convient également de noter que vous pouvez inclure des caractères Unicode arbitraires dans votre code source à l'aide de séquences d'échappement Unicode de la forme "\ uxxxx", où les "x" sont des chiffres hexadécimaux. Cependant, elles diffèrent des chaînes ordinaires et des caractères d'échappement, car vous pouvez les utiliser n'importe où dans un programme Java ... pas seulement dans les littéraux de chaîne et de caractères; voir les sections JLS 3.1 , 3.2 et 3.3 pour plus de détails sur l'utilisation de Unicode dans le code source Java.
Voir également:
Le tutoriel Oracle Java: Nombres et chaînes - Caractères
http://stackoverflow.com/questions/3034186/in-Java-is-there-a-way-to-write-a-string-literal-without-having-to-escape-quote (Réponse: Non)
char ch = '"';
System.out.println (ch + "Chaîne" + ch);
Ou
System.out.println ('"' +" ASHISH "+ '"');
Echappez les guillemets doubles dans votre chaîne: "\"Hello\""
Plus d'informations sur le sujet (voir la partie "Séquences d'échappement")
System.out.println ("\" Hello\"");
System.out.print("\"Hello\"");
Vous recherchez Séquences d'échappement
Voir plus Liste des séquences d'échappement
L'ajout des caractères de citation ne représente qu'une infime partie du problème. Une fois que vous avez fait cela, vous êtes probablement confronté au vrai problème: que se passera-t-il si la chaîne contient déjà des guillemets, des sauts de ligne ou d’autres caractères non imprimables?
La méthode suivante s'occupera de tout:
public static String escapeForJava( String value, boolean quote )
{
StringBuilder builder = new StringBuilder();
if( quote )
builder.append( "\"" );
for( char c : value.toCharArray() )
{
if( c == '\'' )
builder.append( "\\'" );
else if ( c == '\"' )
builder.append( "\\\"" );
else if( c == '\r' )
builder.append( "\\r" );
else if( c == '\n' )
builder.append( "\\n" );
else if( c == '\t' )
builder.append( "\\t" );
else if( c < 32 || c >= 127 )
builder.append( String.format( "\\u%04x", (int)c ) );
else
builder.append( c );
}
if( quote )
builder.append( "\"" );
return builder.toString();
}
Vous pouvez le faire en utilisant également un caractère Unicode
System.out.print('\u0022' + "Hello" + '\u0022');
Il y a deux méthodes faciles:
\
avant les guillemets doubles.''
au lieu de "
Par exemple:
System.out.println("\"Hello\"");
System.out.println("''Hello''");
System.out.println("\"Hello\"")
Utilisez la séquence d'échappement.
\"Hello\"
Cela affichera "Bonjour".
Prenez note, il y a certaines choses à prendre en compte lorsque vous exécutez des barres obliques inverses avec des caractères spécifiques.
System.out.println ("Hello \\"); *édité
La sortie ci-dessus sera:
System.out.println ("Hello \" "); Le résultat ci-dessus sera: