JAVA学习日记每天进步一点点之Scanner类

创建对象

Scanner s = new Scanner(System.in);从键盘接收数据

使用next方法和nextline读取数据

以代码为例:

      Scanner s=new Scanner(System.in);  //创建对象
		if(s.hasNext())
		{
			String str1=s.nextLine();
			System.out.println("输入的数据是:"+str1);
		}
		s.close();

next() 与 nextLine() 区别
next():
1、一定要读取到有效字符后才可以结束输入。
2、对输入有效字符之前遇到的空白,next() 方法会自动将其去掉。
3、只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符。
4、next() 不能得到带有空格的字符串。
nextLine():
1、以Enter为结束符,也就是说 nextLine()方法返回的是输入回车之前的所有字符。
2、可以获得空白。

输入为int或其他数值类型的数据,需要将关键的代码改成hasnextXxx(xxx为数据类型)和nextXxx()读取

代码如下:

Scanner scan = new Scanner(System.in);
		double sum=0;
		double m=0;
		 while(scan.hasNextDouble()) {
			 double d=scan.nextDouble();
			 m=m+1;
			 sum=sum+d;	 
		 }
		 System.out.println("和为:"+sum);
		 System.out.println("平均值为:"+sum/m);

在这里插入图片描述
输入输出如上,因为scan.hasNextDouble()判断输入结束是最后一个enter之后的数据类型不是double型

猜你喜欢

转载自blog.csdn.net/weixin_42625189/article/details/89920765