1.第一套体系
-
nextInt();接收整数
-
nextDouble();接受小数
-
next(); 接受字符串
结论:遇到空格,制表符,回车就会停止接收,符号后面的数据就不会接收了
2.第二套体系
- nextLine();接受字符串整行数据
结论:可以接收空格,制表符,遇到回车会停止接收
package com.itheima.two.test2;
import java.util.Scanner;
//回顾键盘录入
public class Test {
public static void main(String[] args) {
//第一套体系:
//nextInt();接收整数
//nextDouble();接受小数
//next(); 接受字符串
//遇到空格,制表符,回车就会停止接收,符号后面的数据就不会接收了
//
//第二套体系
//nextLine();接受字符串整行数据
//可以接收空格,制表符,遇到回车会停止接收
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个整数");
int num1 = sc.nextInt();
System.out.println(num1);// 123
System.out.println("请输入第二个数");// 123空格234
int num2 = sc.nextInt();
System.out.println(num2);//234
Scanner sc1 = new Scanner(System.in);
System.out.println("请输入第一个字符串");//abd空格vdf
String str1 = sc1.next();
System.out.println(str1);//abd
System.out.println("请输入第二个字符串");
String str2 = sc1.next();
System.out.println(str2);//vdf
Scanner sc2 = new Scanner(System.in);
System.out.println("请输入第一个字符串");//qwe空格qwe回车
String line1 = sc2.nextLine();
System.out.println(line1);//qwe空格qwe
System.out.println("请输入第二个字符串");//qwe
String line2 = sc2.nextLine();
System.out.println(line2);//qwe
}
}
建议:一般情况使用第一套体系,类型转换使用第二套体系
3.键盘录入的两套体系不能混用
弊端:先使用nextInt,再用nextLine会导致下面的nextLine接收不到数据
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个整数");//123回车
int num1 = sc.nextInt();
System.out.println(num1);//123
System.out.println("请输入一个字符串");
String line = sc.nextLine();
System.out.println(line);//回车
}