Scanner类
java.util.Scanner类是从JDK1.5之后加的一个程序类,其主要功能是为了解决输入流的访问问题的,可以理解为BufferReader的替代功能类,在Scanner类里面由如下几种操作方法。
import java.util.Scanner;
public class Test {
public static void main(String[] args) throws Exception {
Scanner scan = new Scanner(System.in) ;
System.out.print("请输入年龄:");
if (scan.hasNextInt()) { // 判断是否有整数输入
int age = scan.nextInt() ; // 直接获取数字
System.out.println("您的年龄:" + age);
} else {
System.out.println("咋看不懂人话呢?输入的是年龄。");
}
scan.close();
}
}
import java.util.Scanner;
public class Test {
public static void main(String[] args) throws Exception {
Scanner scan = new Scanner(System.in) ;
System.out.print("请输入信息:");
if (scan.hasNext()) {
String msg = scan.next() ;
System.out.println("输入信息为:" + msg);
}
scan.close();
}
}
import java.text.SimpleDateFormat;
import java.util.Scanner;
public class Test {
public static void main(String[] args) throws Exception {
Scanner scan = new Scanner(System.in);
System.out.print("请输入您的生日:");
if (scan.hasNext("\\d{4}-\\d{2}-\\d{2}")) {
String str = scan.next("\\d{4}-\\d{2}-\\d{2}");
System.out.println("输入信息为:" + new SimpleDateFormat("yyyy-MM-dd").parse(str));
}
scan.close();
}
}
import java.io.File;
import java.util.Scanner;
public class JavaAPIDemo {
public static void main(String[] args) throws Exception {
Scanner scan = new Scanner(new File("D:" + File.separator + "mldn-info.txt"));
scan.useDelimiter("\n");// 设置读取分隔符
while (scan.hasNext()) {
System.out.println(scan.next());
}
scan.close();
}
}
总结:在以后的开发之中,日过程序需要输出数据一定使用打印流,输入数据使用Scanner(BufferedReader)。