[英]passing array values from methods and writing to text output file
所以我整天都在烦恼地抛出这个项目,现在我不知道该去哪里。 该项目将创建一个1000个随机整数的数组,这些数组的赋值为1-10。 接下来,创建一个数组,该数组存储生成的整数的频率。 接下来,计算数组中整数的平均值。 最后,将所有这些值输出到文本文件。 我看了无数视频,这时完全迷失了。 文本中的示例适用于一种输出文本的主要方法。 我不确定是否应该将文本文件命令放入main方法中,还是应该开发一个单独的方法来处理文本文件输出。 如果是这样,我不确定是否将数组从其他方法传递到新的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];
}
}
您可以使用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();
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.