每日一语:总要对未来有所期待 ,才能更快乐向前 !
目录
1、Scanner对象
之前我们学的基本语法中我们并没有实现程序和人的交互,但是
Java
给我们提供了这样一个工具类,我们可以获取用户的输入。java.util.Scanner
是
Java5
的新特征,我们可以通过
Scanner
类来获取用户的输入。
下面是创建
Scanner
对象的基本语法:
Scanner s = new Scanner ( System . in );
2、next & nextLine
我们先来用next来接受一下输入的内容:
import java.util.Scanner;
public class java1 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("next的接收方式:");
String str = scanner.next();
System.out.println("输入内容"+str);
//注:凡是属于IO流的类如果不关闭会一直占用资源.要养成好习惯用完就关掉.就好像你接水完了要关 水龙头一样.很多下载软件或者视频软件如果你不彻底关,都会自己上传下载从而占用资源,你就会觉得 卡,这一个道理.
scanner.close();
}
输出:
我们可以看到输出并不是一个完整的hello world。
这是为什么呢?我们先把问题留着,再来看看nextLine函数的结果。
输入:
import java.util.Scanner;
public class java1 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("nextLine的接收方式:");
String str = scanner.nextLine();
System.out.println("输入内容"+str);
//注:凡是属于IO流的类如果不关闭会一直占用资源.要养成好习惯用完就关掉.就好像你接水完了要关 水龙头一样.很多下载软件或者视频软件如果你不彻底关,都会自己上传下载从而占用资源,你就会觉得 卡,这一个道理.
scanner.close();
}
我们来看看结果:
我们可以看到用了nextLine之后所输入的字符全部被输出了,这又是为什么呢?
接下来我们来对比next和nextLine之间的区别吧!
两者区别:
next():
1
、一定要读取到有效字符后才可以结束输入。
2
、对输入有效字符之前遇到的空白,
next()
方法会自动将其去掉。
3
、只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符。
4
、
next()
不能得到带有空格的字符串。
nextLine():
1
、以
Enter
为结束符
,
也就是说
nextLine()
方法返回的是输入回车之前的所有字符。
2
、可以获得空白。
3、其他方法
如果要输入 int 或 float 类型的数据,在 Scanner 类中也有支持 ,我们可以来看一下。
import java.util.Scanner;
public class java1 {
public static void main(String[] args) {
int a;
Scanner scanner = new Scanner(System.in);
System.out.println("请输入整数:");
a = scanner.nextInt();
System.out.println("输入整数内容为:"+a);
scanner.close();
}
输出:
浮点型和上述例子类似,我就不在举例说明了,也希望这篇文章能给大家带来帮助!!!