Как мне напечатать обратную косую черту?

#java #syntax

#java #синтаксис

Вопрос:

Когда я пытаюсь System.out.println("\\"); , он печатает две обратные косые черты, я хочу напечатать только одну.

Комментарии:

1. Похоже, есть довольно очевидный кандидат, которого вы не пробовали.

Ответ №1:

System.out.println("\"); . Обратная косая черта — это символ escape: вы пишете одну обратную косую черту, а затем еще один символ, который вместе представляет один символ (длина строки будет равна 1); символ, который трудно записать обычным способом.

"n" имеет длину 1 и является символом новой строки.

"\" имеет длину 1 и является одной обратной косой чертой.

Ответ №2:

Просто для полноты картины. Вы используете "\\" , когда хотите сопоставить буквальную обратную косую черту в регулярном выражении Java / Pattern . Вам нужно выполнить экранирование один раз для регулярного выражения, а затем обе обратные косые черты должны быть экранированы снова… потому что это строковый литерал.

Короче говоря:

  • "\" для буквальной обратной косой черты в строковом литерале
  • "\\" чтобы сопоставить буквенную обратную косую черту в регулярном выражении, выраженном в виде строкового литерала

(Все это имеет смысл, если вы хорошенько подумаете об этом.)

Ответ №3:

Просто сделайте:

 \
  

Пример можно увидеть здесь:

 System.out.println("\");
  

Который производит: