【问题标题】:how do i use an array i returned in my other method in java?如何使用我在 java 中的其他方法中返回的数组?
【发布时间】:2015-03-13 04:46:01
【问题描述】:

这是我返回的方法中的数组:

public static int[] inputData()
{
Scanner kb = new Scanner(System.in);
System.out.println("Please enter a file name: ");
String inputFile = kb.nextLine();
File file = new File(inputFile);
Scanner read = new Scanner(file);
if(!file.exists())
  {
  System.out.println("Error. File not found. Program will now exit.");
  System.exit(0);
  }
int j = read.nextInt();
int[] input = new int[j];
for(int i = 0; i < input.length; i++)
  {
  input[i] = read.nextInt();
  }
return input[i];
}

这是我的主要方法

  public static void main(String[] args) throws IOException
 {

int[] input = new inputData();
printArray(input);
reverseArray(input);
sum(input);
mean(input);
min(input);
max(input);
evenOdd(input);
}

如何使用我在main方法中返回的数组?

【问题讨论】:

  • “我如何使用数组”是什么意思?你想遍历它吗?
  • 使用数组什么?
  • 我知道我在 main 方法中做错了什么。那么我将如何在 main 方法中正确使用 return input[i] 数组,以便我可以在其他方法中使用它?编辑:因为 int[] input = new inputData();给我一个错误,所以我不确定正确的格式是什么
  • 返回输入[i];只会返回一个整数
  • 我认为 inputData 是一个糟糕的方法名称。方法应该有一个类似动词的名称。像getInputData 这样的东西会更好。见Naming Conventions

标签: java arrays return


【解决方案1】:

首先:让inputData实际返回数组:

return input;

第二个:像这样:

int[] input = inputData();

【讨论】:

    【解决方案2】:

    您的代码中的这一行是错误的:

    int[] input = new inputData();
    

    这推断 inputData 是一个类。应该是:

    int[] input = inputData();
    

    并且 inputData 方法应该返回整个数组,而不仅仅是一个元素。

    【讨论】:

      【解决方案3】:

      您需要在代码中修复两件事。

      使方法返回数组:

      return input;
      

      而你的inputData是一个方法,所以你不需要使用new。改成这个。

      int[] 输入 = inputData();

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-12-14
        • 2014-11-01
        • 2022-01-03
        • 2013-01-18
        • 2013-02-25
        • 2015-12-07
        • 2011-01-23
        相关资源
        最近更新 更多