Scanner类中的nextLine()方法

next()和nextLine()区别

  1. 相同点是他们返回值都是String类型
  2. 不同的是nextLine()支持空格

例子如下:

		// 如果你在字符串中间输个空格,空格即后面的字符串都丢弃了
		Scanner scanner= new Scanner(System.in);
		System.out.println("请输入:");
		String  str1=scanner.next();
		System.out.println("你输入的是"+str);

// 如果你在字符串中间输个空格,空格即后面的字符串都在
		System.out.println("请输入:");
		String  str1=scanner.nextLine();
		System.out.println("你输入的是"+str1);
	

如果你同时运行上面的代码你会发现一个问题!

注意事项:next()或者nextXxx()这类API与nextLine()一起使用时,会出现穿透的效果
解决方案

Scanner scanner= new Scanner(System.in);
		System.out.println("请输入:");
		String  str=scanner.next();
		System.out.println("你输入的是"+str);
		
		scanner= new Scanner(System.in);//重新搞
		System.out.println("请输入:");
		String  str1=scanner.nextLine();
		System.out.println("你输入的是"+str1);

你可能感兴趣的:(java,java)