Scanner对象
作为输入使用,主要有两种接收键盘输入字符的方法,next()方法和nextLine()方法,下面介绍一下
import java.util.Scanner;
public class demo01 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入:");//hello world
if (scanner.hasNext()) {
String str = scanner.next();
System.out.println("输出为:"+str);//hello
}
scanner.close();//关闭资源
}
}
上面是采用next()方法接收的,我们可以看出,输入的是“hello world"但是输出的只是hello,这是因为next()方法它接收到空格就会当做是分隔和结束了。不能接收带空格的字符串。
import java.util.Scanner;
public class demo01 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入:");//hello world
if (scanner.hasNextLine()) {
String str = scanner.nextLine();
System.out.println("输出为:"+str);//hello world
}
scanner.close();
}
}
上面采用的是nextLine()方法,这个方法结束是以回车键为标识的,输入一行,就输出一行,一般开发常用这种,我个人也比较推荐这种
那么从键盘输入整数,浮点数,对应的next后面加就完事,例如nextInt();
举个小例:
public class demo01 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入:");
double sum = 0.0;//定义总和
int a = 0;//定义输入的个数
while (scanner.hasNextDouble()){
double v = scanner.nextDouble();
a++;//每输入一个 个数自增一个
sum = sum + v;
}
System.out.println("总和为:"+sum);
System.out.println("平均数为:"+(sum/a));
scanner.close();
}
}