単純なコマンドラインツールでは、いくつかの点とそのy軸値を示す簡単なグラフを描きたいと思います。2つの数字の間の桁数の差を取得する
55,09| |
54,90| ||
54,70| ||
54,51| ||
54,32| ||
54,13| ||
53,94| ||
53,75| ||
53,56| ||
53,37| |||
53,18| ||| | |
52,99| ||| | || |
52,80| ||| | | || |
52,61| ||| || | ||| |
52,42| |||||| || | | |||| ||
52,23| |||||| |||| | |||| ||
52,04| |||||| |||| | |||| |||
51,85| |||||| |||| | |||| |||
51,66| |||||| |||| ||| |||| |||
51,47| |||||| ||||||||| ||||||||
51,28| |||||| ||||||||||||||||||
51,09| |||||| ||||||||||||||||||
50,90| |||||| |||||||||||||||||||
50,71| |||||| |||||||||||||||||||
50,52| ||||||| |||||||||||||||||||
50,33| ||||||| |||||||||||||||||||
50,14| ||||||| |||||||||||||||||||||
49,95| ||||||| |||||||||||||||||||||
49,76| |||||||| |||||||||||||||||||||
49,28| ||||||||||||||||||||||||||||||
が、最大値が最小値以上の数字を持っていることを発生します:
1000,00| |
666,67| | |
333,33| |||
0,01|||||
y軸標識のために、私は次のように現在の「行」のレベルを印刷したいですだから、どのようにして最大値と最小値の間の数字の違いを得ることができるので、先行スペースを追加できますか?
1000,00| |
666,67| | |
333,33| |||
0,01|||||
がNumberFormatを – ControlAltDel
使用を参照してください '文字列最初の解決策は簡単ですが、そのソリューションは、他のすべての面で優れている(私たちが望むものをまっすぐにある、文字を数えます) '7'は数字の幅、' 2'は小数部の幅を表します。数字は '.format()'や 'System.out.format()'や '%7.2f'のようなパターンです。 –
データが整理されていることを考えれば、すべてを最大値と同じ長さにパッドするだけではいかがですか? – flakes