JavaScript では、Array.join() メソッドを使用して、配列の要素を単一の文字列に連結する便利な方法を提供します。ただし、Java には同等の組み込み機能がありません。
特定のアプローチでは、ループと StringBuilder を使用して結合文字列を手動で構築する必要があります。このメソッドには柔軟性がありますが、大規模なコレクションの場合は非効率的になる可能性があります。
Java 8 の導入により、よりエレガントで効率的なソリューション String.join() が登場しました。このメソッドを使用すると、指定した区切り文字を使用して文字列のコレクションを直接結合できます:
List<String> list = Arrays.asList("foo", "bar", "baz"); String joined = String.join(" and ", list); // "foo and bar and baz"
非文字列コレクションの場合、結合とともに Stream API を利用できます。コレクター:
List<Person> list = Arrays.asList( new Person("John", "Smith"), new Person("Anna", "Martinez"), new Person("Paul", "Watson ") ); String joinedFirstNames = list.stream() .map(Person::getFirstName) .collect(Collectors.joining(", ")); // "John, Anna, Paul"
StringJoiner クラスは、結果の文字列のプレフィックスとサフィックスを指定するなど、結合プロセスに対する追加の制御を提供します。
StringJoiner sj = new StringJoiner(", ", "[", "]"); for (String s : list) { sj.add(s); } String joined = sj.toString(); // "[foo, bar, baz]"
これらのメソッドを Java ツールキットに組み込むことで、リストや他のコレクションから要素を効率的に結合できます。シームレスな文字列連結操作を保証します。
以上がJava で文字列のリストを効率的に結合するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。