所以,我必须创建一个创建结果的应用程序,我已经完成了所有事情,我认为????但我不知道如何让私有方法outputData从私有方法getValue输出数组结果。
这就是我所拥有的
// CreateResults.java
// Create poll results and output them to a file.
import java.io.FileNotFoundException;
import java.util.Formatter;
import java.util.FormatterClosedException;
import java.util.IllegalFormatException;
import java.util.NoSuchElementException;
import java.util.Scanner;
public class CreateResults
{
private int getValue()
{
int[]results = { 1, 1, 1, 1, 1, 2, 2, 3, 3, 4, 5, 6, 7, 8, 9 };
outputData(results);
} // end method getValue
private void outputData(int[] output)
{
for (int row = 0; row < results.length; row++) {
System.out.println(input [row]);
}//end for
} // end method outputData
public static void main( String args[] )
{
CreateResults application = new CreateResults();
application.outputData();
} // end main
} // end class CreateResults
答案 0 :(得分:1)
您的数组仅存在于方法范围内。把定义放在外面,使它成为类变量,如下所示:
public class CreateResults
{
int[]results;
private int getValue()
{
results = new int[] { 1, 1, 1, 1, 1, 2, 2, 3, 3, 4, 5, 6, 7, 8, 9 };
outputData(results);
} // end method getValue
}
答案 1 :(得分:1)
要让您的代码正常工作,您需要公开getValue
(因为它不会返回任何内容,使其无效)
然后在您的main
内,您可以拨打application.getValue()
来创建您的阵列,然后拨打outputData
public void getValue()
{
int[]results = { 1, 1, 1, 1, 1, 2, 2, 3, 3, 4, 5, 6, 7, 8, 9 };
outputData(results);
} // end method getValue
public static void main( String args[] )
{
CreateResults application = new CreateResults();
application.getValue ();
} //
同样当outputData
正在处理output
的输入参数时,您需要将其更改为
private void outputData(int[] output)
{
for (int row = 0; row < output.length; row++) {
System.out.println(output[row]);
}
}//e