Зарегистрируйтесь, чтобы продолжить обучение

Кавычки Основы Java

Строки

"Hello"
"Goodbye"
"G"
" "
""

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

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

Представьте, что вы хотите напечатать строчку 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\"");

Дополнительные материалы

  1. Экранирующие последовательности

Открыть доступ

Курсы программирования для новичков и опытных разработчиков. Начните обучение бесплатно

  • 130 курсов, 2000+ часов теории
  • 1000 практических заданий в браузере
  • 360 000 студентов
Отправляя форму, вы принимаете «Соглашение об обработке персональных данных» и условия «Оферты», а также соглашаетесь с «Условиями использования»

Наши выпускники работают в компаниях:

Логотип компании Альфа Банк
Логотип компании Aviasales
Логотип компании Yandex
Логотип компании Tinkoff