我是java的新手,我正在尝试打印的唯一数字大于我文件中的平均值。
3.2
7.5
1.11
9.4
平均:4.8525
double x;
Scanner inputStream = null;
try { // place file in project folder, not src;
inputStream = new Scanner( new File("Data.txt") );
} catch( FileNotFoundException e ) {
System.out.println("Error opening file");
System.exit(1);
}
while(inputStream.hasNextDouble()){
x = inputStream.nextDouble();
System.out.println(x);
}
inputStream.close();
答案 0 :(得分:4)
如果您不知道数据的大小,首先需要在ArrayList
存储数据。
List<Double> list=new ArrayList<>();
while(inputStream.hasNextDouble()){
list.add(inputStream.nextDouble());
}
计算值的总和。
double sum=0.0;
for(Double val: list){
sum+= val;
}
迭代列表并打印大于平均值的值。
for(Double val: list){
if(val> sum/list.size()){
System.out.println(val);
}
}
答案 1 :(得分:0)
while( inputStream.hasNextDouble() ){
x = inputStream.nextDouble();
if(x > 4.8525){
System.out.println(x);
}
}