【发布时间】:2013-02-19 08:53:57
【问题描述】:
我必须创建一个程序,要求用户输入一系列数字,并将输入保存在一个数组中。然后稍后允许用户在数组中搜索一个数字并打印该数组。我被卡住了,因为它不允许我将输入存储在数组中。我还需要帮助打印数组。
我正在上Java课,我们使用的教科书一点帮助都没有,有没有人推荐一本好的Java教科书?
这是我目前的代码:
import java.util.Scanner;
public class MyContainer {
private int [] values;
private int size;
public MyContainer() {
values = new int[50];
size=0;
}
public static void main(String [] args)
{
//load()
Scanner input = new Scanner(System.in);
double sum = 0;
System.out.print("Enter a positive number, negative number will end entry.");
double number = input.nextDouble();
int count = 0;
double average = 0;
int numofinput = 0;
while (number >= 0)
{
count++;
numofinput ++;
sum += number;
System.out.print("Enter a positive number, negative number will end entry.");
number = input.nextDouble();
}
sum = sum + number;
average = sum/numofinput;
System.out.print("The average of the numbers as of right now is "
+ average);
}
//search()
【问题讨论】:
-
values[count] = number;之类的while循环应该将数字存储在数组中。如果没有,您能否扩展“不允许我将输入存储在数组中”?要打印数组,您可以考虑采用与一开始读取数字的方式类似的方法。由于您会提前知道要打印多少个数字,因此您可以在教科书中查找for循环。 -
啊,我被缩进弄糊涂了,错过了将数字读入
main()的点,这是静态的,因此无法从那里访问values。跨度>