13 ответов:
System.out.print("\"Hello\"");двойные кавычки должны быть экранированы в Java строковый литерал. Другие символы, которые нуждаются в специальном лечении, включают:
- возврат каретки и перевод строки:
"\r"и"\n"- обратная косая черта:
"\\"- одну цитату:
"\'"- горизонтальная вкладка и форма подачи:
"\t"и"\f"полный список Java строка и символьный литерал экранирует может быть найден в 3.10.6 из JLS.
также стоит отметить, что вы можете включить произвольные символы Юникода в свой исходный код, используя escape-последовательности Юникода вида "\uxxxx", где "x" - шестнадцатеричные цифры. Однако они отличаются от обычных строк и символов экранирования в том, что вы можете использовать их в любом месте в программе Java ... не только в строковых и символьных литералах; см. разделы ПСБ 3.1, 3.2 и 3.3 для получения подробной информации об использовании Unicode в исходном коде Java.
Читайте также:
Escape двойные кавычки в строке:
"\"Hello\""еще по теме (проверьте часть "Escape-последовательности")
добавление фактических символов кавычек - это лишь малая часть проблемы; как только вы это сделаете, вы, вероятно, столкнетесь с реальной проблемой: что произойдет, если строка уже содержит кавычки, или каналы строк, или другие непечатаемые символы?
следующий метод позаботится обо всем:
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(); }
System.out.print("\"Hello\"");вы ищете Escape-Последовательности
Посмотреть подробнее список Escape-последовательностей
есть два простых метода:
- использовать обратную косую черту
\перед двойными кавычками.- использовать две одинарные кавычки вместо двойных кавычек, как
''вместо"например:
System.out.println("\"Hello\""); System.out.println("''Hello''");
вы можете сделать это с помощью символа Юникода также
System.out.print('\u0022' + "Hello" + '\u0022');
обратите внимание, есть несколько определенных вещей, чтобы принять к сведению при запуске обратных косых черт с конкретными символами.
android:text="import java.IO.*; \npublic class Hello \n { \nSystem.out.println(\"Hello World\"); \n}"
Comments