public static double [] loadGravityData( ) throws IOException
{
  File fileName = new File("gravity1.txt");
  Scanner inFile = new Scanner(fileName);

  double [] gravityData = {};
  while(inFile.hasNext())
   {

   for(int i = 0; i <= gravityData.length; i++)
    {
     gravityData[i] = inFile.nextDouble();

    }

   }
   inFile.close();

return gravityData;
}


第i部分的gravityData是返回异常的内容。任何帮助将非常感激。

最佳答案

您应该将数组初始化为与您希望读取的项的数量一样长,然后更改

for(int i = 0; i <= gravityData.length; i++)
...




for(int i = 0; i < gravityData.length; i++)
...


这是因为长度为n的数组的元素为0,1,...,n-1。

如果算上它们,您可以说实际上有n个元素。

编辑,谢谢特伦戈

如果您不知道要提前阅读多少项,建议您查看ArrayList,这是一种通用动态数组类型

10-06 14:12