Ne posez pas de questions sur Internet sur des choses que vous pouvez tout aussi facilement ou plus facilement rechercher par vous-même. Vous courez le risque d'une grave erreur.
Il manque également le caractère de cloche \aet le caractère nul \0.
bvdb
9
\ane compile pas en javac 1.8.0_20:illegal escape character: String test = "\a";
Ehryk
3
"Les échappements Unicode sont prétraités avant l'exécution du compilateur." - Mark Peters . Ils sont donc différents des échappements de chaîne standard répertoriés ici. Merci Jan pour le commentaire sur cette réponse
Josiah Yoder
43
JavaEscapeSequences:
\u{0000-FFFF}/* Unicode [Basic Multilingual Plane only, see below] hex value
does not handle unicode values higher than 0xFFFF (65535),
the high surrogate has to be separate: \uD852\uDF62
Four hex characters only (no variable width) */
\b /* \u0008: backspace (BS) */
\t /* \u0009: horizontal tab (HT) */
\n /* \u000a: linefeed (LF) */
\f /* \u000c: form feed (FF) */
\r /* \u000d: carriage return (CR) */
\" /* \u0022: double quote (") */
\' /* \u0027: single quote (') */
\\ /* \u005c: backslash (\) */
\{0-377}/* \u0000 to \u00ff: from octal value
1 to 3 octal digits (variable width) */
Le plan multilingue de base correspond aux valeurs unicode de 0x0000 à 0xFFFF (0 à 65535). Les plans supplémentaires ne peuvent être spécifiés en Java que par plusieurs caractères: l'héritoglyphe égyptien A054 (couché dude) est U+1303F/ 𓀿et devrait être divisé en "\uD80C\uDC3F"(UTF-16) pour les chaînes Java. Certaines autres langues prennent en charge les plans supérieurs avec "\U0001303F".
La réponse existante ne traite pas des séquences d'échappement unicode et octal en Java.
Ehryk
2
\u000ane semble pas fonctionner -> - invalid character constant voir plus ici
Jan
6
@Jan Ça marche, peut-être trop bien. Contrairement à, par exemple, \ret \n, les échappements unicode sont prétraités avant que le compilateur ne soit exécuté comme le précise la question à laquelle vous avez lié. En tant que tel, il insère un saut de ligne littéral dans votre code et échoue à cause de cela. Cependant, le code d'échappement "fonctionne" car il était censé fonctionner dans la spécification.
Ehryk
0
Oui, vous trouverez ci-dessous un lien de docs.Oracle où vous pouvez trouver la liste complète des caractères d'échappement en Java.
Les caractères d'échappement sont toujours précédés de "\" et utilisés pour effectuer une tâche spécifique telle que passer à la ligne suivante, etc.
Pour plus de détails sur Escape Character, reportez-vous au lien suivant:
Ce sont des caractères d'échappement qui sont utilisés pour manipuler la chaîne.
\t Insert a tab in the text at this point.
\b Insert a backspace in the text at this point.
\n Insert a newline in the text at this point.
\r Insert a carriage return in the text at this point.
\f Insert a form feed in the text at this point.
\' Insert a single quote character in the text at this point.
\" Insert a double quote character in the text at this point.
\\ Insert a backslash character in the text at this point.
Réponses:
Vous pouvez trouver la liste complète ici .
\t
Insérez une tabulation dans le texte à ce stade.\b
Insérez un retour arrière dans le texte à ce stade.\n
Insérez une nouvelle ligne dans le texte à ce stade.\r
Insérez un retour chariot dans le texte à ce stade.\f
Insérez un saut de formulaire dans le texte à ce stade.\'
Insérez un caractère de guillemet simple dans le texte à ce stade.\"
Insérez un caractère de guillemet double dans le texte à ce stade.\\
Insérez une barre oblique inverse dans le texte à ce stade.la source
\a
et le caractère nul\0
.\a
ne compile pas en javac 1.8.0_20:illegal escape character: String test = "\a";
Le plan multilingue de base correspond aux valeurs unicode de 0x0000 à 0xFFFF (0 à 65535). Les plans supplémentaires ne peuvent être spécifiés en Java que par plusieurs caractères: l'héritoglyphe égyptien A054 (couché dude) est
U+1303F
/𓀿
et devrait être divisé en"\uD80C\uDC3F"
(UTF-16) pour les chaînes Java. Certaines autres langues prennent en charge les plans supérieurs avec"\U0001303F"
.la source
\u000a
ne semble pas fonctionner ->- invalid character constant
voir plus ici\r
et\n
, les échappements unicode sont prétraités avant que le compilateur ne soit exécuté comme le précise la question à laquelle vous avez lié. En tant que tel, il insère un saut de ligne littéral dans votre code et échoue à cause de cela. Cependant, le code d'échappement "fonctionne" car il était censé fonctionner dans la spécification.Oui, vous trouverez ci-dessous un lien de docs.Oracle où vous pouvez trouver la liste complète des caractères d'échappement en Java.
Les caractères d'échappement sont toujours précédés de "\" et utilisés pour effectuer une tâche spécifique telle que passer à la ligne suivante, etc.
Pour plus de détails sur Escape Character, reportez-vous au lien suivant:
https://docs.oracle.com/javase/tutorial/java/data/characters.html
la source
Ce sont des caractères d'échappement qui sont utilisés pour manipuler la chaîne.
En savoir plus sur eux à partir d'ici.
http://docs.oracle.com/javase/tutorial/java/data/characters.html
la source