1.读取输入
Java中输出打印只需要调用System.out.println即可,但是读取“标准输入流”System.in就没有那么简单。想要通过控制台进行输入,需要构造一个System.in关联的Scanner对象。
Scanner in =new Scanner(System.in)
Scanner的各种方法
- Scanner(InPutStream in)
给定的输入流创建一个Scanner对象
- String Scanner.nextLine()
读取输入的下一行内容,回车“ ”结束
- String Scanner.next()
读取输入的一个单词(空格作为分隔符,读取到空格结束)
- int Scanner.next.Int()
读取输入的数字返回Int数据类型
- double nextDouble()
读取数组,返回Double数据类型
- boolean hasNext(String a)
当传入参数a时,输入相同的字符串会返回True,否则False。
如果没有参数a,则检测是否有内容,有就会返回True。
- boolean hasNextInt()
检测一下输入是否为Int
- boolean hasNextDouble()
检测下一个输入是否为double
注:Scanner的输入是可见的,如果想要输入密码不可见,用Console()类。
2.文件输入和输出
读取文件,需要构造一个Scanner对象:
Scanner in =new Scanner(Path.of("myfile.txt"),StandardCharsets.UTF_8)
指定了UTF_8字符编码
写入文件,需要构造一个PrintWriter,在构造器(constructor)中,需要提供文件名和字符编码:
PrintWriter out=new PrintWrite("myfile.txt",StandardCharsets.UTF_8)
- Scanner(path p,String encoding)
在p路径读取文件,并使用指定的编码
- Scanner(String data)
构造一个从给定字符串读取数据的Scanner
- PrintWriter(String fileName)
构造一个将数据写入文件的PrintWriter,文件名由参数指定
- static Path of(String pathname)
根据给定的路径名构造一个path