Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шпори JAVA.docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
178.34 Кб
Скачать

21.Приведення посилальних типів даних.

До посилальним типів даних відносяться масиви, рядки і класи. Посилальні типи зберігають не значення, а посилання на нього. У наступному прикладі

class Point {int [] metrics;}

interface Move {void move (int deltax, int deltay);}

оголошені клас Point, що містить масив metrics, і інтерфейс Move, що містить метод move.

Два посилальних типу вважаються однаковими, якщо:

обидва вони є класами або інтерфейсами, завантажуються одним завантажувачем класів і мають одне і те ж повне ім'я;

обидва вони є масивами, що складаються з елементів одного і того ж типу.

Об'єкт - це або екземпляр класу, або масив. Значеннями посилального типу служать посилання на об'єкти, які часто називаються також вказівниками. Спеціальним посилальним значенням є нульове посилання, яке не вказує ні на який об'єкт.

На один об'єкт може вказувати будь-яку кількість посилань. Якщо дві змінні вказують на один об'єкт, то стан об'єкта може бути змінено через перше посилання, а потім прочитано через друге.

22.Приведення до рядка.

Будь-який тип може бути приведений до рядка, тобто до примірника класу String. Таке перетворення є винятковим в силу того, що охоплює абсолютно всі типи, в тому числі і boolean, який не може брати участь ні в якому іншому приведенні, крім тотожного.

Найпростіший спосіб створення рядка виглядає так:

String greeting = "Hello world!";

У даному випадку «Hello World!» - Це строковий літерал (тобто константа), що складається з послідовності символів, укладених в лапки. Всякий раз, коли компілятор стикається зі строковим літералом, він створює об'єкт типу String зі значенням, в нашому випадку, «Hello World!». Як і будь-який інший об'єкт, рядок можна створити, використовуючи ключове слово new. Клас String має три конструктора, які дозволяють створювати об'єкт, використовуючи різні джерела, наприклад, масив символів.

char[] helloArray = { 'h', 'e', 'l', 'l', 'o', '.' };

String helloString = new String(helloArray);

System.out.println(helloString);

Останній рядок прикладу виведе на екран hello.

Методи для отримання інформації про рядок називаються методами доступу. Один з цих методів length(). Він повертає кількість символів у рядку. У наступному прикладі len дорівнюватиме 17:

String palindrome = "Dot saw I was Tod";

int len ​​= palindrome.length ();

Клас String реалізує метод з'єднання двох рядків(конкатинація):

string1.concat(string2);

Даний код поверне новий рядок, що містить string1 і приєднану до него string2.

Також можна використовувати даний метод із строковими літералами :

"My name is". Concat("Rumplestiltskin");

Найчастіше рядки з'єднують за допомогою оператора «+», приклад:

"Hello," + " world " + "! "

В результаті вийде рядок «Hello, world!».

Оператор «+» широко використовується для виведення інформації, наприклад :

String string1 = "saw I was" ;

System.out.println ("Dot"+string1+"Tod");

Код виведе «Dot saw I was Tod».

Подібна конкатенація може бути використана в зв'язці з будь-якими іншими об'єктами. Для об'єктів які не є рядками буде викликаний метод toString( ), який конвертує їх в рядки.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]