このプログラムは、datafile.txt という名前のファイルを作成し、ランダムに作成された 100 個の整数をテキスト I/O を使用してファイルに書き込みます。また、数値を昇順にソートするための bubbleSort も実装しましたが、ソートされていません。さらに、コマンドラインへの出力は、「並べ替えられた数字は次のとおりです。[I@f72617」100回。前もって感謝します。
import java.io.*;
import java.util.Random;
public class Lab5 {
//sort array
static int[] bubbleSort(int[] array) {
for (int pass = 1; pass <= 100; pass++) {
for (int current = 0; current < 100-pass; current++) {
//compare element with next element
if (array[current] > array[current + 1]) {
//swap array[current] > & array[current + 1]
int temp = array[current];
array[current] = array[current + 1];
array[current + 1] = temp;
} //end if
}
}
return array;
}
public static void main(String args[]) {
//Open file to write to
try {
FileOutputStream fout = new FileOutputStream("F:\\IT311\\datafile.txt");
int index = 0;
//Convert FileOutputStream into PrintStream
PrintStream myOutput = new PrintStream(fout);
Random numbers = new Random();
//Declare array
int array[] = new int[100];
for (int i = 0; i < array.length; i++)
{
//get the int from Random Class
array[i] = (numbers.nextInt(100) + 1);
myOutput.print(array[i] + " ");
//sort numbers
int[] sortedArray = bubbleSort(array);
//print sorted numbers
System.out.print("The sorted numbers are: ");
System.out.print(sortedArray);
}
}
catch (IOException e) {
System.out.println("Error opening file: " + e);
System.exit(1);
}
}
}