日期:2014-05-19 浏览次数:20778 次
//导入了java自带的util【工具包】 import java.util.*; //创建一个类名称为Example2_4 public class Example2_4 { //每个程序都有个入口、这段话就是整个程序的入口、 //public 公开 static 静态 void 默认返回类型 main主程序 //String 字符串类型 args[] 一维数组 //连起来就是程序刚启动的时候被优先生成出来了、 //还是死记这段程序入口代码吧 public static void main(String args[]) { //从系统输入获取输入的字符串 Scanner reader=new Scanner(System.in); //声明一个双精度类型的 a 赋初始值为0 double a=0; //声明一个整形变量b 赋初始值为0 int b=0; //while是个循环 ()里面是条件 //当reader(指的是从系统输入流中获取的字符串中有double类型的数据) while(reader.hasNextDouble()) { //新创建一个局部双精度的变量c 赋初始值从nextDouble()中获取【是下一个双精度么?】 double c=reader.nextDouble(); //b+1的值赋给了b 【整形 + 整形 最后变整形、没有涉及到强制转换】 b=b+1; 【双精度+双精度 最后变双精度 没有涉及强制转换】 a=a+c; } //System.out.printf();【是系统输出流】 // %d 是按整形类型输出【其实是输出的是b值】 %f 是按浮点数类型输出【输出的是a的值】 System.out.printf("%d 个数的和为%f\n",b,a); // %d 是按整形类型输出【其实是输出的是b值】 %f 是按浮点数类型输出【输出的是a除以b的值,双精度】 System.out.printf("%d 个数的平均值是%f\n",b,a/b); } }