Редактирование Юникода в строке - PullRequest
0 голосов
/ 06 марта 2020

Я хотел получить список со строками Unicode, но мне было интересно, смогу ли я использовать для l oop вместо добавления 9 переменных вручную. Я попробовал следующий код, но он не сработал.

List<String> reactions = new ArrayList<>();

for (int i = 1; i < 10; i++) {
    reactions.add("\u003" + i + "\u20E3");
}

Моя IDEA выдает ошибку «незаконный выход из Юникода».
Есть ли другой способ сделать sh это?

Ответы [ 2 ]

0 голосов
/ 06 марта 2020

Самый простой способ преобразовать число в символ в строке - это, вероятно, использовать Formatter через String.format :

List<String> reactions = new ArrayList<>();

for (int i = 1; i < 10; i++) {
    reactions.add(String.format("%c\u20e3", 0x0030 + i));
}
0 голосов
/ 06 марта 2020

Если вы хотите отобразить символ \ u003i, с i от 1 до 9 и \ u20E3, помните, что символ похож на число и может использоваться в математической операции.

  • получить символ \u0030: '\u0030'
  • add i: '\u0030' + i
  • объединить новый символ с другим (в виде строки)

Затем выведите результат:

System.out.println((char)('\u0030' + i) + "\u20E3");
...