Курсы по программированию

Формула программиста

основатель — Волосатов Евгений Витольдович
Поздравляю с 1 сентября! Система начисления Байтов работает.

J4. Типы / TYPE - Непримитивный тип String

  • На этом уроке мы немного поговорим о классе String.
    Им также удобно пользоваться, как и примитивными типами.
    Однако есть некоторые особенности реализации этого класса,
    о которых необходимо знать при разработке программ.
  • Дата отправки отчёта: 2 марта 2019 г.
  • Задание выполнено: за 1 час. 38 мин.
  • Чему научился: Научился правильно сравнивать строки.
    Интересно, существует ли готовый метод сравнения строк на предмет сортировки?
  • Что было сложным: Интересно, существует ли готовый метод сравнения строк на предмет сортировки?
  • Оценка видео-уроку:
Отчёт от 11589 за J4. Типы / TYPE - Непримитивный тип String




Оцени работу

 
Сохранить страницу:

10365. --
Rita
Rita
ответить
→  Yefim  # J4. Типы / TYPE - Непримитивный тип String / 2019-03-02 14:22

Полезная информация про сравнение строк. Кстати,C# работает точно также.


1. --
Евгений Волосатов
Евгений Волосатов
ответить
→  Yefim  # J4. Типы / TYPE - Непримитивный тип String / 2019-03-02 18:01

Конечно, есть целый класс посвящённый этому.


  • Отчёт оценивали:
    13417Chip+1   791Валерий Жданов+1   21090Yaroslav0   11353AlliZzeN+1   14981DimanDOS+1   18131Александр+1   20528Геннадий Кравцов+1   20659no name+1   3922Александр+1   18493Evgenii Kudriavtcev+1   19475Konstantin+1   10365Rita+1   11019Trira+1   1Евгений Волосатов+1   17947Dmitry Sinitsin+1   9752chokayes+1  

Начинаем практику по языку C#





Если вы пришли без приглашения -
введите тысяча двадцать четыре (цифрами).
Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

После заполнения формы ты будешь подписан на рассылку «C# Вебинары и Видеоуроки», у тебя появится доступ к видеоурокам и консольным задачам.

Несколько раз в неделю тебе будут приходить письма — приглашения на вебинары, информация об акциях и скидках, полезная информация по C#.

Ты в любой момент сможешь отписаться от рассылки.


Научился: тип String не относится к примитивным Присваиваемое значение заключается в "двойные кавычки" 'Апострофы' применяй в JAVA для присвоения одиночных символов. "Кавычки  " применяй в JAVA для присвоения неодиночных символов, строк текстов. Пустая строка допускается Допустимы экранирование спецсимволов ' " \ Переменные типа String не редактируются (не меняются, а копируются с изменениями) в месте их хранения в памяти При редактировании переменной типа String создаётся новая копия с изменениями Отсюда потенциальная проблема - при обработке String в цикле, множество копий больших переменных нагружают память и тормозят работу Проблему тормозов решает класс StringBuilder, умело редактирующий string с оптимизацией расходования памяти При использовании знака сложения текста и чисел работает конкатенация, учитывай! Скобки помогают отключить конкатенацию: "ответ: " + 5 + 7 возвратит "ответ: 57" "ответ: " + (5+7) возвратит "ответ: 12" Сравнение разных переменных String С ОДИНАКОВЫМ ЗНАЧЕНИЕМ возвратит true Сравнение разных переменных String С ОДИНАКОВЫМ ЗНАЧЕНИЕМ возвратит false ЕСЛИ ПРЕДПРИНИМАЛОСЬ РЕДАКТИРОВАНИЕ



Научился: Научился определять длину расширенной строки, копировать строки, конкатенировать. Набрал пример из урока, сконкатенировал строки "дом" и "2", получилось "дом2" :D. В моем случае нет отдельного типа String, поэтому я его смоделировал вручную, создав схожую immutable-реализацию. Проверил оптимизацию компилятора на хранение по одному адресу одинаковых строковых констант. Радует то, что оптимизация работает даже без дополнительных ключей компилятора :)