0

たとえば、実際にピクセルを左に移動しない場合、負の幅を設定するポイントは何ですか。

System.out.printf("%-9s", "Name:"); //even though I have -9 it doesn't actually move to the left

ただし、次のとおりです。

System.out.printf("%9s", "Name:"); //moves Name to the right 9 pixels

では、実際に左に移動しない場合、(-) 幅のポイントは何ですか?

注:私は intelliJ を使用しているので、私の IDE に何か問題があるのでしょうか?

4

1 に答える 1

0

幅を設定すると、出力用に最小数のスペースが確保されます。先頭は左右に移動しません。指定した幅の端で出力を右揃えするだけです。

次に、出力が設定した幅よりも小さい場合、残りのスペースが空白で埋められます。ただし、出力が設定した幅よりも大きい場合は、すべてが収まるように出力が移動されます。

例えば...

System.out.printf("%9s", "Name:");

次のようになります。

"    Name:"

その間:

System.out.printf("%9s", "His Name:");

次のようになります。

"His Name:"

一方、-は正当化指定子であるため、次のようになります。

System.out.printf("%-9s", "Name:");

実際には次のようになります。

"Name:    "

このようなことに疑問がある場合は、出力を変更してみてください。次のようなものを使用System.out.printf("[%-9s]", "Name:")すると、空白がより明確になります。

于 2013-10-11T01:25:05.280 に答える