Почему SortableIntField избегает суррогатов UCS-16

#lucene #solr #ucs2

#люциен #солр #ucs2

Вопрос:

Читая исходный код SortableIntField, я заметил, что этот класс избегает «суррогатов UCS-16» при преобразовании целого числа в строку (см. Метод int int2sortableStr(int, char[], int) NumberUtils.java ).

Какую проблему могли бы поднять эти персонажи?

Ответ №1:

Комментарии к данному коду сбивают с толку, на самом деле есть ошибка, Википедия:

Иногда статьи о Unicode ошибочно ссылаются на UCS-2 как на «UCS-16». UCS-16 не существует; авторы, которые допускают эту ошибку, обычно намереваются ссылаться на UCS-2 или UTF-16.

Ваш вопрос № 1: Почему SortableIntField избегает суррогатов UCS-16? Например, чтобы сократить время выполнения и сэкономить место, избегая чрезмерной нагрузки.

Ваш вопрос № 2: Какую проблему могли бы поднять эти персонажи? Опять же, они заняли бы больше места, и если проблема заключается в том, что они заканчиваются, то также увеличится и время выполнения. А также не забывайте перехватывать ваши исключения, так как в противном случае вы можете легко отключить свой сервер.