1.所属java.util包 需要import导包
    2.通过一个带输入流的构造方法来创建对象
    3.常用方法
    nextLine next nextInt (nextFloat nextByte等等除了没有nextChar)
    1. 读取方式上来说 都以回车符作为结束符号
    除了nextLine以外其余方法都不读取回车符

    1. 读取的返回结果来说 nextInt—->int nextFloat—->float
      nextLine—->String next—->String
      next方法看到空格或回车都认为是结束 nextLine只认为回车是结束
      输入abc df g 输入abc df g
      读取abc 读取abc df g

    利用包装类做String与基本类型的转化问题
    int value = Integer.parseInt(“123”);//如果字符串不是整数 就会产生异常NumbeFormatException
    读取小数可以用Float.parseFloat(“123.45”);

    1. import java.util.Scanner;
    2. public class TestScanner {
    3. public static void main(String[] args){
    4. Scanner input = new Scanner(System.in);
    5. System.out.println("请输入密码:");
    6. String password = input.nextLine();//阻塞效果
    7. //解决方法
    8. //1.利用nextLine方法读取一个空回车符
    9. //input.nextLine();
    10. //2.利用next方法读取字符串 其读取方法与nextInt一样 不读回车符
    11. //input.next();
    12. //3.将账号和密码都统一用nextLine来读取的
    13. //如何将String转换为int类型? 基本类型和引用类型不能直接转换
    14. //基本<---包装类--->引用 通过包装类来互相转换
    15. //包装类共八个对应基本类型的八个 int-Integer char-Character byte-Byte
    16. //float-Float 改成首字母大写就行
    17. //String--->int 用Integer.parseInt();
    18. //int--->String 任意一个数字+""就可以 如5+""
    19. int value = Integer.parseInt(password);//若输入的是abc 会出现异常
    20. // NumberFormatException 数字格式化异常
    21. System.out.println("请输入账号:");
    22. String name = input.nextLine();//阻塞效果 等待控制台输入才能继续执行
    23. System.out.println("我接收到的账号为:"+name);
    24. System.out.println("我接收到的密码为:"+password);
    25. //System.out.println(5+5+"5"+5+5);//输出10555
    26. }
    27. }

    Scanner用法.png