[解決済み] Set<String> の内容を空白で区切られた一つの文字列にする最速の方法は?
2023-06-07 13:17:59
質問
私はいくつかの
Set<String>
があり、それぞれを一つの
String
に変換し、元の
Set
の各要素は、空白の " " で区切られています。
素朴な最初のアプローチは、次のようなものです。
Set<String> set_1;
Set<String> set_2;
StringBuilder builder = new StringBuilder();
for (String str : set_1) {
builder.append(str).append(" ");
}
this.string_1 = builder.toString();
builder = new StringBuilder();
for (String str : set_2) {
builder.append(str).append(" ");
}
this.string_2 = builder.toString();
誰か、より速く、より美しく、より効率的な方法を思いつきますか?
どのように解決するのですか?
commons/langを使用すると、以下のようになります。 StringUtils.join :
String str_1 = StringUtils.join(set_1, " ");
簡潔さには勝てませんね。
更新しました。
この回答を読み直すと、私はむしろ グアバのジョイナーに関するもう一つの答えである を選ぶでしょう。実際、最近、私はapache commonsに近づきません。
もうひとつの更新です。
Java 8 では
String.join()
String joined = String.join(",", set);
これはGuava版ほど柔軟ではありませんが、クラスパスにGuavaライブラリがない場合に便利です。
関連
-
シェルコマンドやスクリプトのJavaコール
-
Javaがエラーで実行される、選択が起動できない、最近起動したものがない
-
Web Project JavaでPropertiesファイルを読み込むと、「指定されたファイルがシステムで見つかりません」というソリューションが表示されます。
-
[解決済み] 任意の空白文字をデリミタとして文字列を分割する方法
-
[解決済み】NULL終端文字列の根拠は何ですか?
-
[解決済み】PHPで文字列を整数に変換する最速の方法
-
[解決済み】JavaScriptの文字列で、複数の空白を1つの空白に置き換える。
-
[解決済み】繰り返し文字で埋め尽くされた可変長の文字列を作成する
-
[解決済み】固定長 6 int 配列の最速ソート
-
[解決済み] Java文字列から印刷不可能な文字をすべて取り除く最速の方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Eclipse の問題 アクセス制限。タイプ 'jfxrt' はAPI解決されていません。
-
Javaクラスが "Error occurred during initialization of boot layer "というエラーで実行される。
-
Git Pull Failed マージされていないファイルがあるため、Pull できません。
-
無効な文字定数
-
java -jarコマンドでパッケージを実行すると、無効または破損したjarfile xxxx.jarが表示される。
-
Java基礎編 - オブジェクト指向
-
eclipse にリソースリーク:'in' が閉じない
-
git pull appears現在のブランチに対するトラッキング情報がありません。
-
Java基礎 - マッピングとQ/A
-
[解決済み] C#のString.Format()とString.Join()のJavaでの等価性