package 流程控制;
//Scanner是一个工具类,可以获取用户的输入。 java.util.Scanner(一个工具包)是java5的新特性
//基本语法:Scanner s = new Scanner (System.in)
/*两种方法:next()与nextLine()获取输入的字符串
读取前一般需要使用hasNext()与hasNextLine()判断是否还有输入的数据
*/
import java.util.Scanner;
public class Scanner之next {
public static void main(String[] args) {
//创建一个扫描器对象,用于接收键盘数据
// (可以通过输入new Scanner 然后选择Scanner java.util快捷导入包)
Scanner scanner = new Scanner(System.in);//in就是输入,out是输出
System.out.println("使用next方式接受:");
//判断用户是否输入字符串
//(目前用不到,可以去掉 用于循环,推测与最后的close有关?阻止了if的循环?虽然删了close也没啥区别好像,该关还是关)
if (scanner.hasNext()) {
String str = scanner.next();//程序会等待用户输入完毕
System.out.println("输入的内容为:" + str);
}
//凡是属于IO流(输入输出)的类如果不关闭就会一直占用资源,应用完就关
//此时运行后,可以看到程序一直在运行,等待着输入值
//直到输入值以后,才会结束
scanner.close();
/*next()
一定在读取到有效字符后才可以结束输入
读取到字符前的空白会自动去掉
读取字符后,后面的空白会被作为分隔符或结束符
不能得到带有空格的字符串
*/
}
}===================================================
package 流程控制;
import java.util.Scanner;
public abstract class Scanner之nextLine {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("使用nextLine方式接受:");//这句应该是告诉你程序开始运行了,实际上没有也不影响
/*if(scanner.hasNextLine()){ 这个可以不加,,用于循环,暂时学不到
}
*/
String st = scanner.nextLine();
System.out.println("输出的内容为:"+st);
scanner.close();
/*nextLine()
以Enter为结束符,也就是说,这个方法返回的是回车前的所有字符
可以获得空白
*/
/*所以,总体就是
先导入java.util.Scanner
然后设类设方法
接着通过Scanner指令设定一个新的Scanner,并添加修饰符in(输入)
然后设定一个程序开始运行后输出的语句(应该是用来告诉你程序已经开始了,其实没有也能运行)
随后设定一个字符串,令其赋值为scanner.nextLine()
最后输出字符串
关闭scanner
*/
}
}