【Java基础】关于用scanner输入多个数据的问题

题目要求:

输入你的姓名、性别和年龄并打印

这样写是没有问题的

	public static void main(String[] args) {
    
    
		Scanner sc = new Scanner(System.in);
		System.out.print("请输入你的姓名");
		String n = sc.next();
		System.out.print("请输入你的性别");
		String s = sc.next();
		System.out.print("请输入你的年龄");
		int a = sc.nextInt();
		System.out.print(n+s+a);
	}

这样写也ok

	public static void main(String[] args) {
    
    
		Scanner sc = new Scanner(System.in);
		System.out.print("请输入你的姓名、性别和年龄");
		String n = sc.next();
		String s = sc.next();
		int a = sc.nextInt();
		System.out.print(n+s+a);
	}

一次只能获取一个字符,哪怕是用nextLine写也是,只不过这个是可以读取空格而已

需要注意的是:
调用scanner.next()等这一类操作在这里插入图片描述每次算作一次获取数据,有几个就能获取几次。
但是顺序必须一一对应,一旦发现数据类型对照不上,就会报错。
比如如果第二个要获取的是年龄,是int类型的,而输入的是字符串,就获取不到。
从网上看了一些方法,可以把int也存到string类型的数组,需要时再取出来转换类型;或者加入一些判断语句,实现从一堆数据里面提取某个类型等等。这些等我之后学了更多的基础语法和结构后就会写了。

猜你喜欢

转载自blog.csdn.net/qq_44899247/article/details/107048676