В принципе, я хотел бы использовать символы Юникода в моих линиях System.out.println
, но эти символы Юникода должны быть динамически сгенерированы.Можно ли динамически генерировать символы Unicode в Java?
Например, возьмем символы U+2074
, U+2075
и U+2076
, которые возвращают, соответственно, x^4
, x^5
и x^6
. Чтобы напечатать их в Java, я использовал бы \u2074
, \u2075
и \u2076
, но что, если я хочу их сгенерировать на основе другого значения (т. Е. \u207x
, где x
- переменная)?
Если бы я использовал PHP, я бы использовал variable variables для этого, что было бы очень удобно.
Я даже зашел так далеко, как думают об использовании хака как сохранение u207
в виде строки, что делает мои расчеты стоимости x
и добавления этого значения в строку, а затем есть вопросы, которые вводят \
символ внутри строки :
String unicodeBase = "u207";
// I do something to get a value for x
String unicodeChar = "u207" + x;
System.out.println("\unicodeChar");
Если я делаю это, я получаю illegal unicode escape
ошибку, которая, как ожидается. Но тогда, если я избежать \
символа, то на выходе является строкой, которая не обрабатывается:
System.out.println("\\unicodeChar");
Это возвращает строку unicodeChar
.
Итак, возможно ли динамически генерировать символы Unicode в Java?
Интересно, по крайней мере, это не ошибка. Если я это сделаю, я просто получу надстрочный '0' и ничего больше. – user1301428
Тогда у вас неправильный код. – SLaks