目录

Java IO 的工具类 Scanner 的用法

基本用法

Scanner sc = new Scanner(System.in);
// 1 nextXXX,有 Byte Short Int Long Float Double Boolean BigInteger BigDecimal
if (sc.hasNextInt()) {
  int n = sc.nextInt();
}
// 2 填入正则表达式 可以是Pattern类型或String类型
if (scan.hasNext("^\\d{4}-\\d{2}-\\d{2}$")) {    
  str = scan.next("^\\d{4}-\\d{2}-\\d{2}$");    
  try {
    date = new SimpleDateFormat("yyyy-MM-dd").parse(str);
  } catch (Exception e) {}
} else {
  System.out.println("输入的日期格式错误!");
}

注意事项

  • 不要把 sc.hasNext() sc.next() 放到 while循环中,因为它们会阻塞以等待用户输入