java中scanner怎么用?

Python015

java中scanner怎么用?,第1张

1、Scanner是SDK1.5新增的一个类,可是使用该类创建一个对象.Scanner reader=new Scanner(System.in) 然后reader对象调用下列方法(函数),读取用户在命令行输入的各种数据类型next.Byte(),nextDouble(),nextFloat,nextInt(),nextLine(),nextLong(),nextShot()

上述方法执行时都会造成堵塞,等待用户在命令行输入数据回车确认。例如,拥护在键盘输入12.34,hasNextFloat()的值是true,而hasNextInt()的值是false. NextLine()等待用户输入一个文本行并且回车,该方法得到一个String类型的数据;

2、下面是一个实例:

import java.util.*

public class Example

{

public static void main(String args[])

{

System.out.println("请输入若干个数,每输入一个数用回车确认")

System.out.println("最后输入一个非数字结束输入操作")

Scanner reader=new Scanner(System.in)

double sum=0

int m=0

while(reader.hasNextDouble())

{

double x=reader.nextDouble()

m=m+1

sum=sum+x

}

System.out.printf("%d个数的和为%f\n",m,sum)

System.out.printf("%d个数的平均值是%f\n",m,sum/m)

}

}

运行结果:C:\java>java     Example请输入若干个数,每输入一个数用回车确认最后输入一个非数字结束输入操作34.13445d3个数的和为113.1000003个数的平均值是37.700000

用法:

1、ScannernextInt()只读取数值,剩下"\n"还没有读取,并将cursor放在本行中。

2、next()方法遇见第一个有效字符(非空格,非换行符)时,开始扫描,当遇见第一个分隔符或结束符(空格或换行符)时,结束扫描,获取扫描到的内容,即获得第一个扫描到的不含空格、换行符的单个字符串

3、nextLine()时,则可以扫描到一行内容并作为一个字符串而被获取到。

4、在每一个next()、nextDouble()、nextFloat()、nextInt()等语句之后加一个nextLine()语句,将被next()去掉的Enter结束符过滤掉。

例如:

1、代码如下:

publicclassNextTest{

publicstaticvoidmain(String[]args){

Strings1,s2

Scannersc=newScanner(System.in)

System.out.print("请输入第一个字符串:")

s1=sc.next()

sc.nextLine()

System.out.print("请输入第二个字符串:")

s2=sc.nextLine()

System.out.println("输入的字符串是:"+s1+""+s2)

}

}

2、运行结果:

请输入第一个字符串:home

请输入第二个字符串:work

输入的字符串是:homework

扩展资料:

Scanner使用分隔符模式将其输入分解为标记,默认情况下该分隔符模式与空白匹配。然后可以使用不同的next方法将得到的标记转换为不同类型的值。

例如:

1、以下代码使用户能够从System.in中读取一个数:

Scannersc=newScanner(System.in)

inti=sc.nextInt()

2、以下代码使long类型可以通过myNumbers文件中的项分配:

Scannersc=newScanner(newFile("myNumbers"))

while(sc.hasNextLong()){

longaLong=sc.nextLong()

}

参考资料来源:百度百科—Scanner

用法:

impor java.util.Scanner//导包,在util包中。

//主函数

public static void main(String[] args){

Scanner sc = new Scanner(System.in)

System.out.println("请输入一个int类型的数字..回车结束!")

int num = sc.nextInt()

System.out.println("请输入一个String类型的字符串...回车结束!")

String result = sc.next()

System.out.println("您输入的int类型数字为:" + num+"\n您输入的String类型的字符串为:"+result)

}

扩展资料:

当编辑并运行一个Java程序时,使用文字编辑软件(例如记事本、写字板、UltraEdit等)或集成开发环境(Eclipse、MyEclipse等)在Java源文件中定义不同的类,通过调用类(这些类实现了Java API)中的方法来访问资源系统,把源文件编译生成一种二进制中间码,存储在class文件中,然后再通过运行与操作系统平台环境相对应的Java虚拟机来运行class文件,执行编译产生的字节码,调用class文件中实现的方法来满足程序的Java API调用。

参考资料来源:百度百科-Java