Scanner input=new Scanner(System.in)啥意思?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Scanner input=new Scanner(System.in)啥意思?相关的知识,希望对你有一定的参考价值。

每个单词都代表什么?能不能稍微详细点,感谢啦!~~

扫描从控制台输入的字符,Scanner是用于扫描输入文本的类名,input仅仅是对象名,你可以换成任意的非java保留着,如a、b、c都行,new是给对象new(开辟)一个空间存储扫描进来的东西,System.in 是PrintStream(字节打印流)的一个实例 ,只能按字节读取 参考技术A

扫描从控制台输入的字符。

Scanner是用于扫描输入文本的类名,input仅仅是对象名,你可以换成任意的非java保留着,如a、b、c都行,new是给对象new(开辟)一个空间存储扫描进来的东西,System.in 是PrintStream(字节打印流)的一个实例 ,只能按字节读取。

Scanner -是java类库的一个基础类,一个可以使用正则表达式来解析基本类型和字符串的简单文本扫描器。
input   -声明的变量名。
new Scanner() -给变量input分配空间,初始化,实例化。
System.in -参数, 这里就是获取输入流的意思。
这些都是JAVA的基本知识,建议你从头开始学习下。

参考技术B

Scanner -是java类库的一个基础类,一个可以使用正则表达式来解析基本类型和字符串的简单文本扫描器。

input   -声明的变量名

new Scanner() -给变量input分配空间,初始化,实例化

System.in -参数, 这里就是获取输入流的意思

这些都是JAVA的基本知识,建议你从头开始学习下


参考技术C 建议刚开始你不了解这是什么意思,你只要知道这样可以从客户端读数据就OK了,就算说了你也不一定能懂, 到后面学习对象和io流, 你自然会懂的

Scanner和bufferreader读取控制台字符的区别

从开始学习Java就用了scanner,因为比较简单每当遇到空格键或者换行键则读取下一个字符,一般用法

while(input.hasNextInt()){
int n = input.nextInt();
int t = input.nextInt();
int c = input.nextInt();
int[] a = new int[n];
for(int i = 0;i < n;i++){
a[i]=input.nextInt();
}

这样就可以读取若干行以空格键或者换行键输入,但是今天做一个在线编程时发现bufferreader比scanner快,虽然比scanner占用内存多一些

bufferreader的输入只能使用readline()的方式读取一行文本,如果想将BufferedReader .readLine()的文本(默认是字符串类型)转换成其他类型的话,需要调用相应的方法(比如说想换成int类型的话,调用Integer.parseInt(BufferedReader .readLine()方法去转换格式)) 

BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String str;
        while((str=br.readLine())!=null){
            String[] s = str.trim().split(" ");
            int n = Integer.parseInt(s[0]);
            int t = Integer.parseInt(s[1]);
            int c = Integer.parseInt(s[2]);
            int[] value = new int[n];
            if((str=br.readLine())!=null){
                String[] s2 = str.trim().split(" ");
                for(int i =0;i<n;i++){
                    value[i] = Integer.parseInt(s2[i]);
                }
            }
2.trim()的用法
trim是去掉字符串首尾的空格
3.parseInt()函数
Integer.parseInt(String s)将string返回int数据
Integer.parseInt(String s,int i)将i进制数据转成10进制

以上是关于Scanner input=new Scanner(System.in)啥意思?的主要内容,如果未能解决你的问题,请参考以下文章

java里面为啥总要new,不new为啥不行?scanner scancer=new scan

java中Scanner s = new Scanner(System.in);分别是啥意思?

java异常

人机猜拳

作业1

Scanner和bufferreader读取控制台字符的区别