0

だから私は一日中このプロジェクトをスローしてきましたが、この時点でどこに行くべきかわかりません. このプロジェクトは、1 ~ 10 の値が割り当てられた 1000 個のランダムな整数の配列を作成することです。次に、生成された整数の頻度を格納する配列を作成します。次に、配列内の整数の平均を計算します。最後に、これらすべての値をテキスト ファイルに出力します。私は数え切れないほどのビデオを見てきましたが、この時点で完全に迷っています。テキスト内の例は、テキストを出力する 1 つのメイン メソッド用です。テキスト ファイルのコマンドをメイン メソッドに入れる必要があるのか​​、それともテキスト ファイルの出力を処理する別のメソッドを開発する必要があるのか​​、よくわかりません。もしそうなら、配列を他のメソッドから新しい textFile メソッドに渡すか、それとも何を持っているかわかりません...

先週は複数のメソッドを使用した初めての作業であり、今週は配列を使用した最初の作業であるため、ここでのガイダンスは大歓迎です。

これはこれまでの私のコードです。

 package randomintegers;
 import java.util.*;
 import java.io.*;


 public class RandomIntegers {

/**
 * @param args the command line arguments
 */
public static void main(String[] args) {

    int randomNumbers[] = new int [1000];
    int i;
    for (i=0;i<randomNumbers.length;++i){
    randomNumbers[i] = 1 + (int)(Math.random() * 10);

    }
    calcFrequency(randomNumbers);
    calcAverage(randomNumbers);
}


public static void calcFrequency(int[] inputArray){
    int[] freq=new int[10];
    int i;
    for (i=0;i<inputArray.length;++i){
        ++freq[inputArray[i]-1];    
    }

    //System.out.println(inputArray);
    //System.out.println( (inputArray[i] + 1) + " occured " + freq[i] + " times" );
    System.out.println(Arrays.toString(freq));    }

      public static double calcAverage(int[] randomNumbers)
   {
       int sum = 0;
       for(int i : randomNumbers) sum += i;
        return ((int) sum)/randomNumbers.length;
   }

       public static void textRead(int[] calcAverage int[] calcFrequency)throws FileNotFoundException;{
       Scanner input = new Scanner(new File("randomIntegers.txt"));
       int frequency = input.nextInt();
       int [] outputFreq = new int[10];
   }

}

4

1 に答える 1

1

PrintWriter を使用してファイルに書き込むことができます。

コードにコメントを付けたので、理解しやすいでしょう。

/**
 * Writes array to file.
 * @param array array to write
 * @param fileName name of file in which array will be written
 * @throws FileNotFoundException if creating file fails
 */
public void writeArrayToFile(int [] array, String fileName) throws FileNotFoundException{
    // create PrintWriter object to write to file
    PrintWriter writer = new PrintWriter(fileName);

    // iterate through array, write each element of array to file
    for(int i = 0; i < array.length; i++){
        // write array element to file
        writer.print(array[i]);
        // write separator between array elements to file
        writer.print("\n");
    }

    // done writing, close writer
    writer.close();
}
于 2013-10-13T05:39:21.380 に答える