2 つの文字列の間にスペースを追加したいとします。追加するスペースの量が (コンパイル時に) 10 であることがわかっている場合は、次のように実行できます。
String s = String.format("%-10s %s", "Hello", "World");
しかし、実行時にそれを把握しなければならない場合、それが 10 であることを知らない場合はどうなるでしょうか?
int space = new java.util.Random().nextInt(n);
String s = String.format("-???%s %s, "Hello", "World");
私は連結できることを知っています
String.format("%-" + space + "s %s";, "Hello", "World"));
しかし、それは汚いハックのように感じます。実行時に引数を指定するハックの少ない方法はありますか? フォーマッタはほとんど役に立ちません。文字列を操作するためのより適切で効率的な方法を知っていますがString.format
、ハックなしで可能かどうか興味があります。