配列の演習 String (解答例)

【課題】

数字だけからなる文字列で初期化した配列を宣言し、 この配列をASCIIコード順(辞書順)に整列する Array5sd.java がある。

このプログラムを実行すると     のような表示がされる。

このプログラムに次の処理を追加しなさい。

表示列をふやし、第3列目に浮動小数点として整列したものを表示する

実行例  

【課題の解説】

まず、Array5sd.java について
Array5sd.java 行番号付きリスト
27行目で data[i] と data[maxIndex] を辞書順で比較をしている。
逆順にならべたければ、>0 を <0 とすればよい。

文字列の比較であるから、文字列の左から、1文字づつ比較され

1
2
8
9
の順になり、1桁目が1のものについて、2桁目が比較され
10
12
2
8
9
さらに、3、4桁目が比較され
10.3
10.5
12
2
8
9
となる。この例では、現れないが、必要ならば、ピリオドが数字と 比較される。

【解答例】

方針
  1. ソートする部分とパネルに貼りつける部分を追加(コピー&ペースト)
  2. 追加したソートする部分を数値の比較に変更
  3. 追加したパネルに貼る部分のパネルの名前を変更
  4. 追加したパネルを pane に貼る
プログラム Array5sdv.java

数値の表示を右詰にしてみましょう。(変更点 54行目)
プログラム Array5sdv2.java


Top Page