JAVA 数组 怎么储存一些未知个数的元素进数组

这个问题困扰我一段时间了 我是个初学者

就好像题目是:编写JAVA程序 读入数目不确定的考试分数 输出平均分

可能是深夜了 头脑不清醒

我试过变长参数 double... array 可是就是行不通 有人帮忙下么

非常感激!!!

第1个回答  2010-04-28
用集合的形式就可以完成。在java.util包下的类如:ArrayList, Vector都可以。
import java.util.Scanner;
import java.util.Vector;
public class Test {
//求成绩的平均值方法
public void readScore() {
//记录所有成绩
Vector<Integer> score = new Vector<Integer>();
Scanner sc = new Scanner(System.in);
int n = -1;
//用户输入成绩 当用户输入-1时退出输入
while (true) {
try {
n = sc.nextInt();
if (n == -1) {
break;
}
score.add(n);
}
catch (Exception e) {
}
}
//记录总成绩
int sum = 0;
for (int s : score) {
sum +=s;
}
//平均成绩
float medium = (float)sum/score.size();
//总成绩/成绩个数=平均成绩 score.size()为数组的个数
System.out.println("平均成绩为:"+medium);
}

public static void main(String[] args) {
Test tt = new Test();
tt.readScore();
}
}本回答被提问者采纳
第2个回答  2010-04-28
用java.util包下的类如:ArrayList, Vector就行了,它们的内部实现是数组,但是可以加入任意数目的数据。
第3个回答  2010-04-28
import java.util.*;
public class Test {
public static void main(String[] args) {
ArrayList<Integer> score = new ArrayList<Integer>();
Scanner sc = new Scanner(System.in);
int n = -1;
while(true) {
try{
n = sc.nextInt();
if(n == -1){ break; }
score.add(n);
}catch(Exception e){}
}
}
for(int s : score) {
System.out.print(s + " ");
}
}
第4个回答  2010-04-28
ArrayList
具体参考http://baike.baidu.com/view/1827383.htm?fr=ala0_1_1
里面讲得很详细
相似回答