Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Незмінність Рядків у Java | Рядки
Вступ до Java

Незмінність Рядків у Java

Свайпніть щоб показати меню

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

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

Приклад

Main.java

Main.java

123456789101112131415
package com.example; public class Main { public static void main(String[] args) { int stock = 20; String drink = "Espresso"; stock = 15; drink = "Cappuccino"; System.out.println(stock); // 15 System.out.println(drink); // Cappuccino } }

Хоча обидві змінні були переназначені, вони поводяться по-різному на внутрішньому рівні. Для int змінна безпосередньо зберігає значення — переназначення просто замінює його. Але String — це тип-посилання, тобто змінна зберігає адресу, яка вказує на об'єкт String у пам'яті. Коли присвоюється drink = "Cappuccino", Java не змінює "Espresso" — вона створює абсолютно новий об'єкт String і змушує drink вказувати на нього. Оригінальний об'єкт "Espresso" залишається незмінним.

Як це працює крок за кроком

String drink = "Espresso";

Java створює об'єкт String "Espresso", і drink вказує на нього.

drink = "Cappuccino";

Java створює новий об'єкт String "Cappuccino", тепер drink вказує на новий об'єкт. "Espresso" залишається незмінним.

question mark

Що означає, що рядки є незмінними в Java?

Виберіть правильну відповідь

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 4. Розділ 1

Запитати АІ

expand

Запитати АІ

ChatGPT

Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат

Секція 4. Розділ 1
some-alt