API(Application Programming Interface) :应用程序编程接口
一,Scanner类
在java.util.Scanner;包下
构造方法:
- Scanner(InputStream source):创建 Scanner 对象
- System.in:对应的是InputStream类型,可以表示键盘输入
- Scanner sc = new Scanner(System.in);
成员方法:
- int = sc.nextInt():获取一个Int类型的数据,也可以有其他基本封装类型
- sc.next();
- sc. nextLine()
next() 与 nextLine() 区别
next():
- 一定要读取到有效字符后才可以结束输入。
- 对输入有效字符之前遇到的空白,next() 方法会自动将其去掉。
- 只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符。
- next() 不能得到带有空格的字符串。
nextLine():
- 以Enter为结束符,也就是说 nextLine()方法返回的是输入回车之前的所有字符。
- 可以获得空白。
import java.util.Scanner;
public class Test1 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
/**
* 一、sc.next()和sc.nextLine()区别
* 例子:空格1两个空格3
* next:会去掉第一个空格,后面遇到空格就结束
* nextline:保留空格输出
*
* 二、sc.hasNext()和sc.hasNextLine()区别:
* hasNext()方法会判断接下来是否有非空字符,如果有则返回true,否则返回false。
* hasNextLine()方法会根据行匹配模式去判断接下来是否有一行(包括空行),如果有则返回true,否则返回false。
*/
// if (sc.hasNext()) {
// // next方式:1
// String str= sc.next();
// System.out.print("next方式:"+str);
// }
if (sc.hasNextLine()) {
//hasNextLine方式: 1 3
String str= sc.nextLine();
System.out.print("nextLine()方式:"+str);
}
}
}