为什么我的退货工作不起作用?

时间:2017-05-01 00:00:20

标签: java arrays methods

我坚持使用此代码,无论我在多大程度上工作,都无法通过它。我需要在方法中将文件中的值设置为数组,然后返回它。然后需要为temp设置这些值。我一直被告知我需要返回一个double [],但是当我尝试添加括号时,它告诉我不能从double转换为double []。我也可以在其他可能有问题的地方使用建议。请帮忙,我濒临撞墙!      此外,我删除了文件的位置,因为该位置有我的名字,所以我知道这不是一个合适的位置。

 //Java Eclipse
 import java.util.Scanner;
 import java.io.*;
 public class TempDriver {
 public static void main(String[] args) {
    double [] temp = new double[12];
    Scanner file;
}

    public static double[] readFile(double temp [], Scanner file){
    int i = 0;
    try { 
        file = new Scanner(new File(""));

        while(file.hasNextDouble()) {
            temp[i] = file.nextDouble();
            i++;
        }

    file.close();

    }
    catch(FileNotFoundException e){
        System.out.println ("File not found");
    }
    catch(ArrayIndexOutOfBoundsException e){
        System.out.println ("Array index too large");

    } 
    return temp[i];
}

}

1 个答案:

答案 0 :(得分:0)

嗯,这里有几件事情已经破了,但没有什么不能......哦等等, 是什么?......呃,没关系。

嘿,看,问题已被编辑。试。

好吧,你的代码很乱,但至少它比原始版本要简单得多。在这里和那里有一些接触,它应该工作,所以不要担心。你快到了!

  1. 拨打readFile()中的main()
  2. 您没有使用Scanner file中收到的readFile(),而是在参数之上的方法中创建自己的temp。使用您收到的内容或从参数列表中删除它。
  3. 返回temp[i]而不是//Java jEdit import java.util.Scanner; import java.io.*; public class TempDriver { public static void main(String[] args) { //The array were you are going to put the data double[] temp = new double[12]; //The Scanner you are going to read the numbers from Scanner file = new Scanner(new File("myfile.dat")); //Calling readFile() temp = TempDriver.readFile(temp, file); //Close the Scanner now that you are done using it file.close(); //TODO: Display your fetched data here } public static double[] readFile(double[] temp, Scanner file){ int i = 0; try { //Read numbers while (file.hasNextDouble()) { temp[i] = file.nextDouble(); i++; } } catch(FileNotFoundException e){ System.out.println ("File not found"); } catch(ArrayIndexOutOfBoundsException e){ System.out.println ("Array index too large"); } //Return the array return temp; } } 。第一个是double数组,而后者是double。
  4. 这里的代码包含上述修复程序:

    {{1}}

    希望这会对你有所帮助。