Как вывести кавычки в java
Перейти к содержимому

Как вывести кавычки в java

  • автор:

Как поставить кавычки в java

Если вам нужно вставить кавычки внутри строки в Java , вы можете использовать символ обратной косой черты \ перед кавычками. Этот символ указывает компилятору, что следующий символ является частью строки, а не разделителем.

Например: String str = "Это \"строка\" в кавычках"; System.out.println(str); // => Это "строка" в кавычках 

Java: Кавычки

Какие из этих пяти вариантов — строки? С первыми двумя все понятно: это точно строки, мы уже работали с подобными конструкциями. А что насчет остальных?

Любой одиночный символ в кавычках — это строка. Пустая строка «» — это тоже строка. То есть строкой мы считаем все, что находится внутри кавычек, даже если это пробел, один символ или вообще отсутствие символов.

Представьте, что вы хотите напечатать строчку dragon’s mother. Апостроф перед буквой s — это такой же символ, как одинарная кавычка. Попробуем. Такой вариант программы отработает корректно:

System.out.println("Dragon's mother"); 

А что, если мы хотим создать такую строку:

Dragon's mother said "No"

В ней есть и одинарные, и двойные кавычки. Как быть в этой ситуации? Если просто попытаться вывести такую строку, то мы получим ошибку:

// Завершится с синтаксической ошибкой System.out.println("Dragon's mother said "No""); 

С точки зрения Java, здесь странная конструкция из двух трех компонентов:

  • Строки «Dragon’s mother said «
  • Строки «»
  • Слова No между ними, которые не рассматривается как строка, потому что оно не в кавычках

Привычным способом эту строчку не вывести. Для вывода таких строк используют символ экранирования: \ .

Если поставить \ перед кавычкой, это будет означать, что кавычку нужно рассматривать не как начало или конец строки, а как ее часть:

System.out.println("Dragon's mother said \"No\""); 

Задание

Напишите программу, которая выведет на экран:

"Khal Drogo's favorite word is "athjahakar""

Программа должна вывести на экран эту фразу в точности. Обратите внимание на кавычки в начале и в конце фразы.

Упражнение не проходит проверку — что делать? ��

Если вы зашли в тупик, то самое время задать вопрос в «Обсуждениях». Как правильно задать вопрос:

  • Обязательно приложите вывод тестов, без него практически невозможно понять что не так, даже если вы покажете свой код. Программисты плохо исполняют код в голове, но по полученной ошибке почти всегда понятно, куда смотреть.

В моей среде код работает, а здесь нет ��

Тесты устроены таким образом, что они проверяют решение разными способами и на разных данных. Часто решение работает с одними входными данными, но не работает с другими. Чтобы разобраться с этим моментом, изучите вкладку «Тесты» и внимательно посмотрите на вывод ошибок, в котором есть подсказки.

Мой код отличается от решения учителя ��

Это нормально ��, в программировании одну задачу можно выполнить множеством способов. Если ваш код прошел проверку, то он соответствует условиям задачи.

В редких случаях бывает, что решение подогнано под тесты, но это видно сразу.

Прочитал урок — ничего не понятно ��

Создавать обучающие материалы, понятные для всех без исключения, довольно сложно. Мы очень стараемся, но всегда есть что улучшать. Если вы встретили материал, который вам непонятен, опишите проблему в «Обсуждениях». Идеально, если вы сформулируете непонятные моменты в виде вопросов. Обычно нам нужно несколько дней для внесения правок.

Кстати, вы тоже можете участвовать в улучшении курсов: внизу есть ссылка на исходный код уроков, который можно править прямо из браузера.

Как вставить символ двойных кавычек в строку?

Самый стандартный способ, применяемый во многих языка, в том числе и в Java — экранирование с помощью символа \ :

String myString = "Строка со \"словом\" в кавычках"; 

Отслеживать
29k 14 14 золотых знаков 61 61 серебряный знак 119 119 бронзовых знаков
ответ дан 2 апр 2015 в 8:24
DreamChild DreamChild
36.3k 3 3 золотых знака 45 45 серебряных знаков 85 85 бронзовых знаков
Это еще называется escape символ
2 апр 2015 в 8:47

Благодарю, это работает, но задача усложнилась.Перед кавычками еще надо поставить слеш +»
2 апр 2015 в 9:13
решается аналогично
2 апр 2015 в 9:16
Да, действительно
2 апр 2015 в 9:17
в конце строки кавычки лишние
13 дек 2016 в 15:06

String str1 = "Строка со \"словом\" в кавычках"; 

Отслеживать
ответ дан 2 апр 2015 в 8:23
Павел Вершинин Павел Вершинин
3,981 1 1 золотой знак 15 15 серебряных знаков 23 23 бронзовых знака

Да, есть, добавляешь перед каждым символом который нужно экранировать \ . Например, для вывода на экран «C: \\\folder\\\folder1\» нужно добавить по «экрану» перед КАЖДЫМ символом вот так:

System.out.println("\"C: \\\\\\\folder\\\\\\\folder1\\\\\""); 

Отслеживать
9,333 3 3 золотых знака 29 29 серебряных знаков 58 58 бронзовых знаков
ответ дан 31 мар 2017 в 9:26
21 1 1 бронзовый знак

final char dm = (char) 34; final String string = "STRING: " + dm + " string " + dm; System.out.println(string); 

Отслеживать
ответ дан 12 ноя 2017 в 7:49
4,117 4 4 золотых знака 14 14 серебряных знаков 29 29 бронзовых знаков
Вообще не понял, а за что заминусовали? У меня всё отработало прекрасно.
20 дек 2018 в 15:24

 String x = "\\"; String y = "\""; System.out.println("It's Windows path: " + y + "C:" + x + "Program Files" + x + "Java" + x + "jdk1.7.0" + x + "bin" + y); System.out.println("It's Java string: " + x + y + "C:" + x + x + "Program Files" + x + x + "Java" + x + x + "jdk1.7.0" + x + x + "bin" + x + y); 

Отслеживать
ответ дан 24 янв 2016 в 21:12
11 1 1 бронзовый знак
Решение задачи с JavaRush, верно? А есть «нормальный» способ экранировать кавычки?
26 окт 2016 в 17:46
@Dunaevsky Maxim, А символом для экранирования экранировать не нормально? 🙂
29 июн 2017 в 14:06

  • java
  • android
  • строки
    Важное на Мете
Похожие

Подписаться на ленту

Лента вопроса

Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.

Дизайн сайта / логотип © 2024 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2024.4.30.8420

Как вывести кавычки в java

— Двойной слэш — это логично. А вот всё остальное сразу не запомню. Придётся пользоваться твоими подсказками.

— Постепенно запомнишь то, что нужно. Не переживай. А для остального есть Google.

Кодировка Unicode

— Ты уже знаешь, что каждому символу, отображаемому на экране, соответствует определенный числовой код. Стандартизированный набор таких кодов называют кодировкой .

— Когда-то давно, когда только изобрели компьютеры, для кодировки всех символов было достаточно семи бит (меньше одного байта) – первая кодировка содержала всего 128 символов. Называлась такая кодировка ASCII .

— Ничего странного. Это сокращение такое. ASCII (англ. American Standard Code for Information Interchange) — американская стандартная кодировочная таблица для печатных символов и некоторых специальных кодов.

— Она состояла из 33 непечатных управляющих символов (влияющих на обработку текста и пробелов) и 95 печатных символов, включая цифры, буквы латинского алфавита в строчном и прописном вариантах и ряд пунктуационных символов.

— Рост популярности компьютеров привел к тому, что каждая страна начала выпускать свою кодировку. Обычно за основу брали ASCII и заменяли редко используемые символы на символы национальных алфавитов.

— Со временем появилась идея: создать одну кодировку, в которой разместить все символы всех мировых кодировок.

— Так в 1993 году была создана кодировка Unicode , и язык Java был первым языком программирования, который использовал ее как стандарт хранения текста. Сейчас же Unicode — стандарт всей ИТ-индустрии.

— И хотя Unicode сам по себе является стандартом, у него есть несколько форм представления (Unicode transformation format, UTF): UTF-8, UTF-16 и UTF-32, и пр.

— В Java используется продвинутая разновидность кодировки Unicode – UTF-16: каждый символ в которой кодировался 16 битами (2 байтами). Она способна вместить до 65,536 символов! В этой кодировке можно найти почти все символы всех алфавитов мира.

— Я надеюсь, её не нужно знать наизусть?

— Ладно-ладно. Воспользуюсь правилом: “нельзя знать всё, но всё можно загуглить”.

— Рациональный подход — наше всё. Так вот, чтобы записать в коде программы символ кодировки Unicode по его коду, нужно написать \u + шестнадцатеричные цифры кода . Например \u00A9

 System.out.println("\u00A9 JavaRush");
© JavaRush

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *