在java Scanner 类中怎么结束输入?

Python027

在java Scanner 类中怎么结束输入?,第1张

在java的输入输出中,有一个很有用的类scanner

Scannner scn=new Scanner(System.in)

String str=scn.nextString()

while(str.IsEmpty())

{

System.out.println(str)

}

无限输入str时,按ctrl+z即可停止输入操作

java的优点:

Java是一个广泛使用的网络编程语言 ,它是一种新的计算概念。

作为一种程序设计语言 ,它简单、面向对象、不依赖于机器的结构、具有可移植性、鲁棒性、安全性、并且提供了并发的机制、具有很高的性能。

它最大限度地利用了网络 ,Java的小应用程序 (applet)可在网络上传输而不受 CPU和环境的限制。

Java还提供了丰富的类库 ,使程序设计者可以很方便地建立自己的系统。

一般是以回车键判断的

如果是读取文件的话,设置一个结尾标识符就行了,因为正常的话System.in是个输入流,它除了键盘输入没有其他办法写入数据,因此我觉得采用System.SetIn()重定向标准输入,让指定的(文件)输入流成为标准输入

public static void main(String args[]) {

InputStream inputStream

try {

inputStream = new FileInputStream("D:/log.txt")

System.setIn(inputStream)

Scanner scanner = new Scanner(System.in)

while (scanner.hasNext()) {

System.out.println(scanner.nextLine())

}

scanner.close()

} catch (FileNotFoundException e) {

e.printStackTrace()

}

}

一般用Scanner in = new Scanner(System.in)来获取控制台输入,in.hasNext()判断控制台是否输入内容。

例如下面的代码表示始终检测控制台是否有输入数字,然后打印。这种情况一般是按Ctrl+Z表示推出控制台输入。

while (in.hasNext()) {

    int n = in.nextInt()

    System.out.println(n)

}

另外也可以人为判断是否输入结束,比如获取输入的字符串,判断是否为换行\n(或者其他指定字符或字符串等)来结束输入。

还有一些ACM题目中,类似你这样的,一般会先要求输入一个数字表述接下来的输入次数,这些都是可以作为输入结束的判断依据的。