怎么让Java输入字符串_怎么让Java获取用户输入的字符串[通俗易懂]

怎么让Java输入字符串_怎么让Java获取用户输入的字符串[通俗易懂]从控制台动态输入数据,对数据进行各种各样的处理,然后将数据输出是很常见的操作。现在对数据的输入方式进行系统的介绍:Scanner类的调用相关方法:hasNext()判断扫描器中当前扫描位置后是否还存在下一段。hasNextLine()如果在此扫描器的输入中存在另一行,则返回true。next()查找并返回来自此扫描器的下一个完整标记。nextLine()此扫描器执行当前行,并返回跳过的输入信息。…

大家好,又见面了,我是你们的朋友全栈君。

254a83cf27ec1d89a019536f001b0c8e.png

从控制台动态输入数据,对数据进行各种各样的处理,然后将数据输出是很常见的操作。现在对数据的输入方式进行系统的介绍:

Scanner类的调用

相关方法:

hasNext()判断扫描器中当前扫描位置后是否还存在下一段。

hasNextLine()如果在此扫描器的输入中存在另一行,则返回 true。

next()查找并返回来自此扫描器的下一个完整标记。

nextLine()此扫描器执行当前行,并返回跳过的输入信息。

nextInt()将控制台扫描的整形数据返回。

相关视频教程分享:java学习视频

代码举例:package FIRST_Chapter;

import java.util.Scanner;

public class TestScanner {

public static void main(String[] args) {

Scanner s = new Scanner(System.in);

System.out.println(“请输入字符串:”);

while (true) {

String line = s.nextLine();

if (line.equals(“ok”)) break;

System.out.println(“>>>” + line);

}

}

}

结果演示:

ed543125f4f622501a694a96486fcafb.png

next()和nextLine()方法的区别

next()方法一定要读取到有效字符后才可以结束输入,对输入有效字符之前遇到的空格键、Tab键或Enter键等结束符,next()方法会自动将其去掉,只有在输入有效字符之后,next()方法才将其后输入的空格键、Tab键或Enter键等视为分隔符或结束符。

简单地说,next()查找并返回来自此扫描器的下一个完整标记。完整标记的前后是与分隔模式匹配的输入信息,所以next方法不能得到带空格的字符串。

而nextLine()方法的结束符只是Enter键,即nextLine()方法返回的是Enter键之前的所有字符,它是可以得到带空格的字符串的。

比如如下程序:package FIRST_Chapter;

import java.util.Scanner;

class test{

public static void main(String[] Args){

Scanner sc= new Scanner(System.in);

System.out.println(“请输入一段数据”);

String str =sc.next();

System.out.println(“用next输入的语句”+str);

String str1 =sc.nextLine();

System.out.println(“用nextLine输入的语句”+str1);

//sc.nextLine();//如果下面注释行想用nextLine的话,就要注意加上这句话

}

}

输出结果:

fe9c1f0d6ff93d26b09f89c26acc5226.png

换个结果输出:

6ece1821da034687cd2f574762ffce6d.png

总结:next碰到空格,换行都结束输入。而nextLine只以换行(回车)才会结束输入。

从第二个结果看出,当你输入回车表示输入结束时,这个时候下一行的代码nextLine也结束了输入。而输入的结果是空的,就是个回车而已。

相关文章教程推荐:java入门教程

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/156304.html原文链接:https://javaforall.net

(0)
上一篇 2022年7月7日 下午2:00
下一篇 2022年7月7日 下午2:16


相关推荐

  • html attrs属性,在Vue中详细介绍$attrs属性

    html attrs属性,在Vue中详细介绍$attrs属性这篇文章主要给大家介绍了关于Vuev2.4中新增的$attrs及$listeners属性的使用方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着我来一起学习学习吧。前言多级组件嵌套需要传递数据时,通常使用的方法是通过vuex。如果仅仅是传递数据,而不做中间处理,使用vuex处理,未免有点杀鸡用牛刀。Vue2.4版本提供了另一种方法,使用…

    2022年10月17日
    3
  • 字典树模板及例题_模板计算公式

    字典树模板及例题_模板计算公式转载:Trie树的常见应用大总结(面试+附代码实现)(一)Trie的简介Trie树,又称字典树,单词查找树或者前缀树,是一种用于快速检索的多叉树结构,如英文字母的字典树是一个26叉树,数字的字典树是一个10叉树。他的核心思想是空间换时间,空间消耗大但是插入和查询有着很优秀的时间复杂度。(二)Trie的定义Trie树的键不是直接保存在节点中,而是由节点在树中的位置决定。一个节点的所有子…

    2025年9月26日
    6
  • 超硬核十万字!全网最全 数据结构 代码,随便秒杀老师/面试官,我说的

    超硬核十万字!全网最全 数据结构 代码,随便秒杀老师/面试官,我说的本文代码实现基本按照《数据结构》课本目录顺序,外加大量的复杂算法实现,一篇文章足够。能换你一个收藏了吧?

    2022年6月5日
    33
  • 全网最全的JAVA所有版本特性【JAVA 1.0 – JAVA 19】

    全网最全的JAVA所有版本特性【JAVA 1.0 – JAVA 19】闲来想了解下各版本之间的特性 搜索没有最新的特性说明 故想写一份 废话不多说 JDKVersion1 01996 01 23Oak 橡树 初代版本 伟大的一个里程碑 但是是纯解释运行 使用外挂 JIT 性能比较差 运行速度慢 JDKVersion1 11997 02 19JDBC JavaDataBase 支持内部类 RM

    2026年3月17日
    2
  • 解决mysql操作1045错误,1153错误和1130错误

    解决mysql操作1045错误,1153错误和1130错误

    2021年9月26日
    54
  • The package javax.swing is not accessible错误的三种解决办法,亲测有效

    The package javax.swing is not accessible错误的三种解决办法,亲测有效按照学长给出的解决方案 eclipse 中的解决办法 solution 在我们这个报错的 java 文件所在的项目中 选择对应的 JRE 系统库 右击 JRE 系统库 改变 执行环境 那一栏 我这里是因为 jdk 13 版本导入不了 javax swing 的包 所以我按照学长的建议 改成了 jdk1 8 的版本

    2026年3月19日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号