java基础中键盘录入涉及到的方法

这篇具有很好参考价值的文章主要介绍了java基础中键盘录入涉及到的方法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

总的方法有以下几种:

next()、nextLine()、nextInt()、nextDouble()

其中,next()、nextLine()在键盘录入时可以接收任意数据,但是都会返回的内容都是字符串形式;

比如:键盘录入abc,那么会把abc看做字符串返回。键盘录入123,那么会把123看做字符串返回。

 代码示例:

```java
Scanner sc = new Scanner(System.in);
String s = sc.next();//录入的所有数据(无论是abc还是123)都会看做是字符串
System.out.println(s);
```

其中,nextInt()只能录入整数,当录入小数或其他字符、字母就会报错;

nextDouble()能录入整数和小数,但返回的都是小数类型,录入字母、字符会报错。

键盘录入的第一种体系:

next(),nextInt(),nextDouble()在接收数据的时候,会遇到空格,回车,制表符其中一个就会停止接收数据。

即,当键盘录入的数据里面有空格、回车等时,如“abc abc"(两个abc中间有一个空格),打印输出的内容只会有一个abc

代码示例:

```java
Scanner sc = new Scanner(System.in);
String s = sc.next();
System.out.println(s);
//键盘录入:a b//注意录入的时候a和b之间加空格隔开。
//此时控制台打印a
//表示next方法在接收数据的时候,遇到空格就停止了,后面的本次不接收。
```

next(),nextInt(),nextDouble()在接收数据的时候,会遇到空格,回车,制表符其中一个就会停止接收数据。但是这些符号 + 后面的数据(空格以及后面的abc)还在内存中并没有接收。如果后面还有其他键盘录入的方法,会自动将这些数据接收。

代码示例:

```java
Scanner sc = new Scanner(System.in);
String s1 = sc.next();
String s2 = sc.next();
System.out.println(s1);
System.out.println(s2);
//此时值键盘录入一次a b(注意a和b之间用空格隔开)
//那么第一个next();会接收a,a后面是空格,那么就停止,所以打印s1是a
//但是空格+b还在内存中。
//第二个next会去掉前面的空格,只接收b
//所以第二个s2打印出来是b
```

键盘录入的第二种体系:

nextLine()方法是把一整行全部接收完毕。即使这一行里包括空格,也会在输出端一起打印。如键盘录入"abc abc",输出端打印"abc abc"

代码示例:

```java
Scanner sc = new Scanner(System.in);
String s = sc.nextLine();
System.out.println(s);
//键盘录入a b(注意a和b之间用空格隔开)
//那么nextLine不会过滤前面和后面的空格,会把这一整行数据全部接收完毕。
```

ps:第一套体系和第二套体系一般不混用 

/**揭秘第一套体系和第二套体系不能混用*/
package demo8;
import java.util.Scanner;
public class Test2 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        //next()为第一套体系
        System.out.println("请输入第一个字符串");//键盘录入abc abc
        String s1 = sc.next();//第一个next()接收到的实际是abc+空格
        System.out.println(s1);//打印输出时第一套体系遇到空格等停止,因此仅输出abc,而空格会留给下一个输出
        //sc.nextline()为第二套体系
        System.out.println("请输入第二个字符串");//当输入第一个字符串,摁空格以后程序运行,发现此条语句无法从键盘录入
        String s3 = sc.nextLine();//因为上一条语句的next()留了一个空格健给此处的nextline()
        System.out.println(s3);
        /**因此,第一二套体系不能混用*/
    }
}

键盘录入分为两套:

- next()、nextInt()、nextDouble()这三个配套使用。

如果用了这三个其中一个,就不要用nextLine()。

- nextLine()单独使用。

如果想要整数,那么先接收,再使用Integer.parseInt进行类型转换。

### 代码示例:

```java
Scanner sc = new Scanner(System.in);
String s = sc.next();//键盘录入123
System.out.println("此时为字符串" + s);//此时123是字符串
int i = sc.nextInt();//键盘录入123
System.out.println("此时为整数:" + i);
```

录入的是字符串,想要整数,只需要接收了字符串以后,对字符串强转为整数即可。

```java
Scanner sc = new Scanner(System.in);
String s = sc.nextLine();//键盘录入123
System.out.println("此时为字符串" + s);//此时123是字符串
int i = Integer.parseInt(s);//想要整数再进行转换
System.out.println("此时为整数:" + i);
```
 文章来源地址https://www.toymoban.com/news/detail-724475.html

到了这里,关于java基础中键盘录入涉及到的方法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 网络安全涉及到的知识积累(5)

    1.bp里的raw、params、headers、hex几个格式分别表示什么? Raw:web请求的raw格式,包含请求地址、http协议版本、主机头、浏 览器信息、Accept可接受的内容类型、字符集、编码方式、cookie等。我们可以手工去修改这些信息,对服务器端进行渗透测试。 params:客户端请求的参数信息

    2024年02月11日
    浏览(24)
  • vue中bus的使用和涉及到的问题

    创建一个js文件 我们可以直接在要使用的页面中引用使用 也可以     main.js中引用定义: 正常的通讯上面就已经完成了,但是还有一个问题那就是如果接受的页面不存在了,还是会继续执行bus.$on,所以我们需要再不需要的时候或者页面销毁时将bus销毁 但是如果是有个页面通讯

    2024年02月11日
    浏览(23)
  • 线性代数中涉及到的matlab命令-第一章:行列式

    目录 1,逆序数  2,行列式定义和性质 2.1,常用特性及命令  2.2,求行列式 2.3,行列式的性质  2,行列式按行(列)展开  3,范德蒙德行列式   在学习线性代数过程中,发现同步使用MATLAB进行计算验证可以加深对概念的理解,并能掌握MATLAB的命令和使用方法; 使用的线性

    2024年02月04日
    浏览(27)
  • 深入详解使用 RabbitMQ 过程中涉及到的多个细节问题(面试可用)

    目录 1、基础类问题 2、cluster 相关问题 3、综合性问题 4、参考资料 C++软件异常排查从入门到精通系列教程(专栏文章列表,欢迎订阅,持续更新...) https://blog.csdn.net/chenlycly/article/details/125529931 C/C++基础与进阶(专栏文章,持续更新中...) https://blog.csdn.net/chenlycly/category_119

    2024年01月20日
    浏览(31)
  • http和https的区别,以及https涉及到的加密过程

    一.http与https的介绍 http:超文本传输协议,是互联网应用最广泛的一种网络协议。设计的最初目的是为了提供一种发布和接收HTML页面的方法。是以明文的形式来传输的,所以就会存在一定的安全隐患(因为攻击者可以截取web服务器和网站相关的报文,就可以直接读懂其中的信

    2024年02月05日
    浏览(32)
  • 线性代数中涉及到的matlab命令-第二章:矩阵及其运算

    目录 1,矩阵定义 2,矩阵的运算 3,方阵的行列式和伴随矩阵  4,矩阵的逆  5,克莱默法则  6,矩阵分块  矩阵与行列式的区别: (1)形式上行列式是数表加两个竖线,矩阵是数表加大括号或中括号; (2)行列式可计算得到一个值,矩阵不能; (3)两个行列式相加与两

    2024年02月08日
    浏览(35)
  • pytorch从python转 c++涉及到的数据保存加载问题;libtorch

    python代码 c++代码 python代码 c++代码

    2024年02月13日
    浏览(29)
  • [正式学习java③]——字符串在内存中的存储方式、为什么字符串不可变、字符串的拼接原理,键盘录入的小细节。

    🌈键盘敲烂,年薪30万🌈 目录 一、字符串 1.字符串在内存中的存储方式 2.创建字符串对象的两种方式 3.两种创建方式的区别 4.字符串对象一旦创建不可改变 - 为什么??? 5.字符串的拼接 6.字符串的拼接原理 二、键盘录入 三、总结 🔥在java中,内存中有两个地方可以存储

    2024年02月08日
    浏览(39)
  • 回声消除(AEC)原理、算法及实战——完整的回声消除算法框架所涉及到的模块介绍

    一、一个完整的回声消除系统,包含以下几个模块: 1.时延估计(Time Delay Estimation, TDE) 模块 2.(线性)回声消除(Linear Acoustic Echo Cancellation, AEC) 模块(线性滤波模块) 3.双讲检测(Double-Talk Detect, DTD) 模块 4.非线性残余声学回声抑制(Residual Acoustic Echo Suppression, RAES) 模块(

    2024年02月04日
    浏览(23)
  • 线性代数中涉及到的matlab命令-第三章:矩阵的初等变换及线性方程组

    目录 1,矩阵的初等变换 1.1,初等变换 1.2,增广矩阵  ​1.3,定义和性质 1.4,行阶梯型矩阵、行最简型矩阵 1.5,标准形矩阵  1.6,矩阵初等变换的性质  2,矩阵的秩  3,线性方程组的解  初等变换包括三种:交换行或列、某行或列乘以一个非零系数、某行或列加上零一行

    2024年02月04日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包