Java中的Scanner类
在Java中,可以使用Scanner类实现多行输入。Scanner类是Java 5中添加的一个实用类,它可以方便地从控制台、文件和字符串中读取数据。为了使用Scanner类,需要首先创建Scanner对象,然后使用该对象的方法读取输入数据。
使用Scanner实现多行输入
使用Scanner类实现多行输入的过程相对简单。首先,需要创建Scanner对象。在控制台输入结束后,使用Ctrl+Z(Windows)或Ctrl+D(Linux/macOS)表示输入已经结束。在读取输入时,Scanner对象的nextLine方法可以读取多行输入,并将其存储为字符串。为了读取多行输入,可以使用如下代码:
Scanner scanner = new Scanner(System.in); StringBuilder strBuilder = new StringBuilder(); while (scanner.hasNextLine()) { String line = scanner.nextLine(); if (line.isEmpty()) { break; } strBuilder.append(line).append('n'); } String input = strBuilder.toString();
在上述代码中,先创建了一个Scanner对象scanner和一个StringBuilder对象strBuilder。然后,在while循环中不断读取输入行,如果输入行为空,则表示输入结束,退出while循环。最终,将StringBuilder对象转换为String对象,并且存储着多行输入。
使用Java 8的Stream API实现多行输入
在Java 8中,可以使用Stream API更方便地读取多行输入数据。Stream API提供了一种更为简洁的方式来实现数据操作。在使用Stream API时,需要创建一个Stream对象,然后使用lines方法将多行输入转换为一个Stream对象。具体用法如下:
Scanner scanner = new Scanner(System.in); String input = scanner.useDelimiter("A").next(); List lines = Arrays.asList(input.split("r?n")); Stream inputStream = lines.stream();
在上述代码中,首先创建了一个Scanner对象scanner,并且读取所有输入行。然后,使用String的split方法和正则表达式“r?n”将整个输入分割为行。最后,使用Stream的of方法将字符串数组转换为Stream对象。
总之,从上述代码中可以看到,Stream API比使用Scanner类实现多行输入要简洁和方便。如果您熟悉Stream API并且使用Java 8或更高版本,则建议尝试使用它来处理多行输入。
本文来自投稿,不代表亲测学习网立场,如若转载,请注明出处:https://www.qince.net/javapeixuneh5.html
郑重声明:
本站所有内容均由互联网收集整理、网友上传,并且以计算机技术研究交流为目的,仅供大家参考、学习,不存在任何商业目的与商业用途。 若您需要商业运营或用于其他商业活动,请您购买正版授权并合法使用。
我们不承担任何技术及版权问题,且不对任何资源负法律责任。
如遇到资源无法下载,请点击这里失效报错。失效报错提交后记得查看你的留言信息,24小时之内反馈信息。
如有侵犯您的版权,请给我们私信,我们会尽快处理,并诚恳的向你道歉!