Программирование на Java

       

В данном случае может сложиться


public String concat(String s);

Он возвращает новый объект-строку, дополненный справа строкой s.

Рассмотрим другой пример.

public class Test { public static void main(String[] args) { Test t = new Test(); String s = " prefix !"; System.out.println(s); s = s.trim(); System.out.println(s); s = s.concat(" suffix"); System.out.println(s); } }

prefix ! prefix ! prefix ! suffix

В данном случае может сложиться впечатление, что строку (объект String, на который ссылается переменная s), можно изменять. В действительности это не так. В результате выполнения методов trim (отсечение пробелов в начале и конце строки) и concat создаются новые объекты-строки и ссылка s начинает указывать на новый объект-строку. Таким образом, меняется значение ссылки, объекты же неизменяемы.

Как уже отмечалось, строка состоит из двухбайтных Unicode-символов. Однако во многих случаях требуется работать со строкой как с набором байт (ввод/вывод, работа с базой данных и т.д.). Преобразование строки в последовательность байтов производится следующими методами:



  • byte[] getBytes() – возвращает последовательность байтов в кодировке, принятой по умолчанию (как правило, зависит от настроек операционной системы);


  • byte[] getBytes(String encoding) – возвращает последовательность байтов в указанной кодировке encoding.


Для выполнения обратной операции (преобразования байтов в строку) необходимо сконструировать новый объект-строку с помощью следующих методов:



  • String(byte[] bytes) – создает строку из последовательности байтов в кодировке, принятой по умолчанию;


  • String(byte[] bytes, String enc) – создает строку из последовательности байтов в указанной кодировке.



Содержание  Назад  Вперед







Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий