Не совсем.В Java тип char
в два раза больше ширины в битах типа byte
, но это означает, что только символы могут иметь длину два байта.Это зависит от кодировки символов вашей String, но с кодировкой UTF-8 (по умолчанию) символы кодируются как только один байт для символов от 0 до 127, но несколько байтов для символов в этом диапазоне (когда установлен старший бит, онозначает, что следующий байт также является частью текущего символа)
Для строк, состоящих только из 0-127 символов (т. е. «обычный текст»), длина байта будет равна длине символа.
Если вашСтрока содержит символы вне диапазона 0-127, длина байта будет больше, чем количество символов.