import java.util.Scanner;
/**
*cover:
*System类中的in属性
*Scanner扫描器 读取控制台输入的内容
*Scanner类中nextLine()方法的应用
*查看所在包名类名的方法
*代码连续写法,判断最终接收类型的方法
*流、扫描器用后记得关闭和关闭时间节点分析
*异常java.util.NoSuchElementException: No line found产生原因分析
*/
/**
* alt+/调出此方法中定义的属性供选择 ctrl+/单行注释 ctrl+shift+/多行注释 ctrl+shift+F文本对齐
* 编辑器会提示流用完要关闭,输出流由于是System类的静态变量,System.out.close()直接关闭即可,输入流in由于是扫描器封装的,关闭扫描器既关闭输入流,注意关闭的时间节点。
* @author FFrog
* */
public class InputCode {
public static void main(String[] args){
/*按住Alt+单击in,in在System类中是这样定义的:public final static InputStream in = null;
同样Scanner在Scanner类是这样定义的:public final class Scanner implements Iterator<String>, Closeable{},Closeable接口抛出了一个异常。
Scanner类没有static修饰,需要实例化。
这里说明一下InputStream输入流需要用扫描器封装的原因:
InputStream实际上是以字节为单位来获取数据,而且需要复杂的判断并创建字节数组作为缓冲,字节转成字符时也容易出现乱码,所以字符数据读取的时候用扫描器封装获得字符串类
System类中的in属性 Scanner扫描器 读取控制台输入的内容 Scanner类中nextLine()方法的应用 查看所在包名类名的方法 代码连续写法,判断最终接收类型的方法
于 2022-03-25 23:58:27 首次发布