フォーマットメソッドへの呼び出しでhello変数を複数回繰り返す必要がありますか、または%s
のトークンすべてに一度引数を指定できるようにする短縮バージョンがありますか?String.formatで同じパラメータが複数回使用されている場合はどうなりますか?
89
A
答えて
189
the docsより:
フォーマット一般的な、文字の指定子、および数値型は、以下の構文を有する:
%[argument_index$][flags][width][.precision]conversion
任意のargument_indexを示す10進整数であります引数リスト内の引数の位置。最初の引数は、別のオプションが相対インデックス使用することです
String.format("%1$s %1$s %1$s %1$s %1$s %1$s", hello);
22
など、"2$"
により、第2、"1$"
によって参照される:書式指定子を最後の書式指定子と同じ引数を参照します。例えば
:hello hello hello hello
で
String.format("%s %<s %<s %<s", "hello")
結果。
0
String.format
で引数を再利用する一般的なケースの1つは区切り記号です(CSVの場合は";"
、コンソールの場合はタブ)。
System.out.println(String.format("%s %2$s %s %2$s %s %n", "a", ";", "b", "c"));
// "a ; ; ; b"
これは望ましい出力ではありません。 "c"
はどこにも表示されません。
あなたは(%s
で)最初のセパレータを使用してのみ、次の出現箇所のための引数インデックス(%2$s
)を使用する必要があります。
System.out.println(String.format("%s %s %s %2$s %s %n", "a", ";", "b", "c"));
// "a ; b ; c"
スペースは読みやすさとデバッグのために追加されます。形式が正しいように表示されたら、スペースがテキストエディタで削除することができます。
System.out.println(String.format("%s%s%s%2$s%s%n", "a", ";", "b", "c"));
// "a;b;c"
関連する問題
- 1. DLLが複数回リンクされている場合、エクスポートされたグローバル変数はどうなりますか?
- 2. 同じ画像がHTMLページ内で複数回参照されている場合、画像データは1回または複数回転送されますか?
- 3. 同じアプリが複数回実行されています
- 4. 同じチェンジセットを複数回マージするとどうなりますか? - TFS
- 5. 同じコントローラがページ内で2回使用されている場合、モデルは互いに反映されなくなります
- 6. 複数のWebアプリケーションがjBossで同じコンテキストルートを持つ場合はどうなりますか?
- 7. sprintf同じ値を複数回使用しています
- 8. srcとdestがSDL_BlitSurfaceで同じ場合はどうなりますか?
- 9. 単一のクエリで同じサブクエリが複数回使用されました
- 10. リストビューからの同じデータが複数回出力されています
- 11. "NSString stringWithFormat:" - 同じパラメータに複数回アクセスしますか?
- 12. 複数のpthreadが同じ関数を使用するとどうなるか
- 13. StructureMapで同じレジストリが複数回ロードされているかどうかを確認するにはどうすればよいですか?
- 14. 複数のBeanが同じフォームで使用されています
- 15. 同じ整数をscanfで複数回使用する
- 16. 同じパラメータ化されたSQLクエリを異なるパラメータ値で複数回実行する
- 17. 同じPOSTパラメータが同じ場合に、キャッシュからフェッチして出力する
- 18. 同じ要素が複数回含まれているかどうかの文字列リストを見つける
- 19. 複数のJSPタグライブラリに同じプレフィックスを使用させるにはどうすればいいですか?
- 20. Jquery qtipが同じターゲットに対して複数回表示されないようにするにはどうすればよいですか?
- 21. string.Formatは、同じラベルにテキストと浮動小数点を使用することで回避します
- 22. JOINされたマッピングテーブルを同じテーブルの複数のフィールドよりもうまく使用していますか?
- 23. 同じ文字列で複数回str_replaceを使用する
- 24. JS内の同じノードで複数回appendChildを使用する
- 25. 同じオブジェクトを使用したRestkitオブジェクトマッピングが複数回参照されています
- 26. 異なる入力を持つServerTemplateで同じRightscriptが複数回使用されました
- 27. @propertyが使用されない場合があります
- 28. 同じ結果が複数回返される
- 29. 同じUDFへの複数の呼び出しが1つのステートメント内にある場合、呼び出される回数は何回ですか?
- 30. 複数のMySQLが同じテーブルに結合されています
https://docs.oracle.com/javase/8/docs/api/java/util/Formatter.html#dpos – Vadzim