Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте StringBuilder | String
Основи Java

StringBuilder

Що таке StringBuilder?

StringBuilder — це утилітний клас для маніпулювання та редагування об'єктів рядків.

Note
Примітка

Більше про класи, їх створення та правильну роботу з ними ви дізнаєтесь у окремому курсі.

StringBuilder має власні методи, а створення об'єкта StringBuilder є простим та інтуїтивно зрозумілим.

Main.java

Main.java

1
StringBuilder builder = new StringBuilder();

Усередині дужок можна також передати рядкове значення, і наша змінна StringBuilder міститиме це значення:

Main.java

Main.java

1
StringBuilder builder = new StringBuilder("c<>definity");

Щоб вивести наше значення в консоль, потрібно використати один із методів StringBuilder. Це метод toString(), який перетворює значення StringBuilder у значення типу String. Розглянемо приклад:

Main.java

Main.java

123456789
package com.example; public class Main { public static void main(String[] args) { StringBuilder builder = new StringBuilder("c<>definity"); String string = builder.toString(); System.out.println(string); } }
Note
Примітка

Зверніть увагу, якщо у вашого StringBuilder значення null, буде кинуто виняток NullPointerException (NPE).

StringBuilder у дії

StringBuilder надає широкий набір методів, одним із найцінніших і найчастіше використовуваних є append(String str). Цей метод дозволяє додавати вказаний рядок до наявного вмісту об'єкта StringBuilder.

Розглянемо приклад коду:

Main.java

Main.java

12345678910111213141516
package com.example; public class Main { public static void main(String[] args) { // Initializing the new `String` with value "Hello" String hello = "Hello"; System.out.println("Our string before using an append() method: " + hello); // Initializing a new `StringBuilder` with value of our already initialized string StringBuilder builder = new StringBuilder(hello); // Using `append()` method, adding a string world to our `StringBuilder` builder = builder.append(" world!"); // Creating a new `String` variable that has a `StringBuilder` value String result = builder.toString(); System.out.println("Our string after using an append() method: " + result); } }

Чому не використовувати оператор +?

Віддаємо перевагу методу append класу StringBuilder, оскільки він дозволяє уникнути створення численних тимчасових об'єктів, що підвищує продуктивність при багаторазовому зміненні вмісту. Використання оператора + створює новий об'єкт щоразу, що є затратним за пам'яттю та часом. StringBuilder змінює вміст безпосередньо, що робить його ефективнішим для багаторазових змін.

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

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

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

Секція 5. Розділ 6
single

single

StringBuilder

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

Що таке StringBuilder?

StringBuilder — це утилітний клас для маніпулювання та редагування об'єктів рядків.

Note
Примітка

Більше про класи, їх створення та правильну роботу з ними ви дізнаєтесь у окремому курсі.

StringBuilder має власні методи, а створення об'єкта StringBuilder є простим та інтуїтивно зрозумілим.

Main.java

Main.java

1
StringBuilder builder = new StringBuilder();

Усередині дужок можна також передати рядкове значення, і наша змінна StringBuilder міститиме це значення:

Main.java

Main.java

1
StringBuilder builder = new StringBuilder("c<>definity");

Щоб вивести наше значення в консоль, потрібно використати один із методів StringBuilder. Це метод toString(), який перетворює значення StringBuilder у значення типу String. Розглянемо приклад:

Main.java

Main.java

123456789
package com.example; public class Main { public static void main(String[] args) { StringBuilder builder = new StringBuilder("c<>definity"); String string = builder.toString(); System.out.println(string); } }
Note
Примітка

Зверніть увагу, якщо у вашого StringBuilder значення null, буде кинуто виняток NullPointerException (NPE).

StringBuilder у дії

StringBuilder надає широкий набір методів, одним із найцінніших і найчастіше використовуваних є append(String str). Цей метод дозволяє додавати вказаний рядок до наявного вмісту об'єкта StringBuilder.

Розглянемо приклад коду:

Main.java

Main.java

12345678910111213141516
package com.example; public class Main { public static void main(String[] args) { // Initializing the new `String` with value "Hello" String hello = "Hello"; System.out.println("Our string before using an append() method: " + hello); // Initializing a new `StringBuilder` with value of our already initialized string StringBuilder builder = new StringBuilder(hello); // Using `append()` method, adding a string world to our `StringBuilder` builder = builder.append(" world!"); // Creating a new `String` variable that has a `StringBuilder` value String result = builder.toString(); System.out.println("Our string after using an append() method: " + result); } }

Чому не використовувати оператор +?

Віддаємо перевагу методу append класу StringBuilder, оскільки він дозволяє уникнути створення численних тимчасових об'єктів, що підвищує продуктивність при багаторазовому зміненні вмісту. Використання оператора + створює новий об'єкт щоразу, що є затратним за пам'яттю та часом. StringBuilder змінює вміст безпосередньо, що робить його ефективнішим для багаторазових змін.

Завдання

Проведіть, щоб почати кодувати

Ви створюєте відображення продуктів для веб-сторінки. Кожен продукт має назву та ціну, які зберігаються у двовимірному масиві.
Потрібно відформатувати весь список у структурований рядок за допомогою StringBuilder.

  1. Створіть метод з назвою buildProductList(String[][] products), який повертає відформатований String.
  2. Ініціалізуйте StringBuilder і додайте заголовок:
    "Product List:\n"
  3. Пройдіться по масиву products за допомогою for-each циклу.
  4. Для кожного продукту:
    • Отримайте назву (product[0])
    • Отримайте ціну (product[1])
    • Додайте рядок до StringBuilder у форматі:
      ProductName - $Price\n
  5. Поверніть повний String з StringBuilder.

Рішення

Switch to desktopПерейдіть на комп'ютер для реальної практикиПродовжуйте з того місця, де ви зупинились, використовуючи один з наведених нижче варіантів
Все було зрозуміло?

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

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

Секція 5. Розділ 6
single

single

Запитати АІ

expand

Запитати АІ

ChatGPT

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

some-alt