Java: Литеральный знак процента в printf операторе

Я предполагаю, что Вы хотите быть в состоянии использовать неродной посредством отладки от Eclipse. Можно просто выполнить классы внешне путем установки созданных классов в каталогах bin на пути к классу JRE.

java -cp workspace\p1\bin;workspace\p2\bin foo.Main

можно отладить использование удаленного отладчика и использование в своих интересах файлов класса, созданных в проекте.

В этом примере, структура проекта Eclipse похожа на это:

workspace\project\
                 \.classpath
                 \.project
                 \debug.bat
                 \bin\Main.class
                 \src\Main.java

1. Запустите Консоль JVM в Режиме отладки

, debug.bat является пакетным файлом Windows, который должен быть выполнен внешне от консоль cmd.exe .

@ECHO OFF
SET A_PORT=8787
SET A_DBG=-Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,address=%A_PORT%,server=y,suspend=y
java.exe %A_DBG% -cp .\bin Main

В аргументах, порт отладки был установлен на 8787 . аргумент suspend=y говорит JVM ожидать до присоединений отладчика.

2. Создайте Конфигурацию Запуска Отладки

В Eclipse, откройте диалоговое окно Отладки (Выполнение> Открывают Debug Dialog...), и создайте новое Удаленное JAVA-приложение конфигурация со следующими настройками:

  • Проект: Ваше название проекта
  • Тип соединения: Стандарт (Присоединение Сокета)
  • Хост: порт localhost
  • : 8787

3. Отлаживая

Так, все, необходимо сделать любое время, Вы хотите отладить приложение:

  • устанавливает запуск точки останова
  • пакетный файл в консольном
  • запуске настройка отладочного процесса

, можно отследить эту проблему в ошибка 122429 . Можно работать вокруг этой проблемы в приложении при помощи уровня абстракции, как описано здесь .

125
задан Qix 28 June 2015 в 01:16
поделиться

2 ответа

Знак процента экранируется с помощью знака процента:

System.out.printf("%s\t%s\t%1.2f%%\t%1.2f%%\n",ID,pattern,support,confidence);

Полный синтаксис можно найти в java docs . Эта конкретная информация находится в разделе Преобразования первой ссылки.

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

186
ответ дан 24 November 2019 в 00:59
поделиться

Экранированный знак процента - это двойной процент (%%):

System.out.printf("2 out of 10 is %d%%", 20);
94
ответ дан 24 November 2019 в 00:59
поделиться
Другие вопросы по тегам:

Похожие вопросы: