3 ответов:
вызывая его
toString()метод.возвращает строку, содержащую символы в этой последовательности в том же порядке, в такой последовательности. Длина строки будет равна длине этой последовательности.
здесь есть тонкая проблема,которая немного попала.
The
toString()метод имеет базовую реализацию вObject.CharSequence- это интерфейс; и хотяtoString()метод появляется как часть этого интерфейса, во время компиляции нет ничего, что заставит вас переопределить его и соблюдать дополнительные ограничения, которыеCharSequencetoString()метод javadoc ставит наtoString()метод; т. е. что он должен возвращать строку, содержащую символы в заказ, возвращенныйcharAt().ваша IDE даже не поможет вам, напомнив, что вы, что вы наверное стоит переопределить
toString(). Например, в intellij, это то, что вы увидите при создании новогоCharSequenceреализация:http://puu.sh/2w1RJ. обратите внимание на отсутствиеtoString().если вы используете
toString()на произвольныйCharSequence, это должны работа содержалаCharSequenceисполнитель сделал свою работу должным образом. Но если вы хотите, чтобы избежать любой неопределенности в целом, вы должны использоватьStringBuilderиappend(), например:final StringBuilder sb = new StringBuilder(charSequence.length()); sb.append(charSequence); return sb.toString();
вы можете напрямую использовать string.valueOf ()
String.valueOf(charSequence)хотя это же как
toString()он выполняет проверку на null наcharSequenceперед фактическим вызовом toString.это полезно, когда метод может вернуть либо a
charSequenceилиnullзначение.
Comments