总的方法有以下几种:
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);
```
录入的是字符串,想要整数,只需要接收了字符串以后,对字符串强转为整数即可。文章来源:https://www.toymoban.com/news/detail-724475.html
```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模板网!