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

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

book
StringBuilder

Що таке StringBuilder?

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

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

java

Main

copy
1
StringBuilder builder = new StringBuilder();

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

java

Main

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

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

java

Main

copy
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); } }

StringBuilder у дії

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

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

java

Main

copy
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 змінює вміст безпосередньо, що робить його значно ефективнішим для повторних змін.

Завдання

Swipe to start coding

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

Рішення

java

solution

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

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

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

Секція 5. Розділ 6
Ми дуже хвилюємося, що щось пішло не так. Що трапилося?

Запитати АІ

expand
ChatGPT

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

book
StringBuilder

Що таке StringBuilder?

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

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

java

Main

copy
1
StringBuilder builder = new StringBuilder();

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

java

Main

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

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

java

Main

copy
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); } }

StringBuilder у дії

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

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

java

Main

copy
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 змінює вміст безпосередньо, що робить його значно ефективнішим для повторних змін.

Завдання

Swipe to start coding

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

Рішення

java

solution

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

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

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

Секція 5. Розділ 6
Switch to desktopПерейдіть на комп'ютер для реальної практикиПродовжуйте з того місця, де ви зупинились, використовуючи один з наведених нижче варіантів
Ми дуже хвилюємося, що щось пішло не так. Що трапилося?
some-alt