single
ストリングビルダー
メニューを表示するにはスワイプしてください
StringBuilderとは?
StringBuilderは、文字列オブジェクトの操作や編集を行うためのユーティリティクラス。
StringBuilderは独自のメソッドを提供し、StringBuilderオブジェクトの作成は簡単かつ直感的。
Main.java
1StringBuilder builder = new StringBuilder();
括弧内に文字列値を渡すこともでき、StringBuilder変数はその値を保持する。
Main.java
1StringBuilder builder = new StringBuilder("c<>definity");
値をコンソールに出力するには、StringBuilderのメソッドの1つを使用する必要がある。toString()メソッドは、StringBuilderの値をString型の値に変換する。
例を見てみる。
Main.java
123456789package 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 オブジェクトの既存の内容に追加することができます。
コード例を見てみましょう:
Main.java
12345678910111213141516package 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); } }
なぜ + 演算子を使わないのか?
StringBuilder の append メソッドを使用することで、複数の一時オブジェクトの生成を避け、内容を繰り返し変更する際のパフォーマンスが向上します。+ 演算子を使うと、そのたびに新しいオブジェクトが作成され、メモリや時間のコストが高くなります。StringBuilder は内容を直接変更するため、繰り返しの変更に対してより効率的です。
スワイプしてコーディングを開始
ウェブページ用の商品一覧表示を作成します。各商品には名前と価格があり、これらは2次元配列に格納されています。
StringBuilderを使用して、リスト全体を整然とした文字列にフォーマットする必要があります。
buildProductList(String[][] products)というメソッドを作成し、フォーマット済みのStringを返します。StringBuilderを初期化し、ヘッダーとして
"Product List:\n"を追加します。- for-eachループを使って
products配列を繰り返し処理します。 - 各商品について:
- 名前(
product[0])を抽出 - 価格(
product[1])を抽出 StringBuilderに次の形式で1行を追加
ProductName - $Price\n
- 名前(
Stringから完全なStringBuilderを返します。
解答
フィードバックありがとうございます!
single
AIに質問する
AIに質問する
何でも質問するか、提案された質問の1つを試してチャットを始めてください