Эти методы не выполняют кодировку, они просто представляют собой копию внутреннего состояния экземпляра String
.
Кодирование - это процесс преобразования логических глифов в числовое представление, последовательность байтов. Подумайте о String
как о представлении последовательности символов Unicode. Класс String
имеет API-интерфейсы для доступа к этим глифам в виде 32-битных кодовых точек или в виде серии из 16-разрядных значений, кодированных с помощью UTF-16-BE (который, как правило, является внутренним представлением строки) или в виде серии байтов в выбранной кодировке. Вам нужно указать только кодировку в последнем случае.
Некоторые кодировки, такие как UTF-8, поддерживают все символы Юникода, в то время как многие другие, такие как US-ASCII, поддерживают только крошечное подмножество. API-интерфейсы char[]
не позволяют указывать другую кодировку (UTF-16-LE или UTF-16 с спецификацией), потому что одного достаточно, а содействие единообразию сводит к минимуму ошибки из несовпадающих кодировок.
Что такое 'char'? –
это базовый тип Java –
Ну, да. Но что он представляет? –