09、Java流程控制_1、用户交互scanner
scanner类,获取用户的键盘输入,进行人机交互
System类代表系统,系统级的很多属性和控制方法都放置在该类的内部。该类位于java.lang包。由于该类的构造方法是private的,所以无法创建该类的对象,也就是无法实例化该类。其内部的成员变量和成员方法都是static的,所以也可以很方便的进行调用。
System.in作为InputStream类的对象实现标准输入,可以调用它的read方法来读取键盘数据。
System.out作为PrintStream打印流类的对象实现标准输出,可以调用它的print、println或write方法来输出各种类型的数据。
import java.util.Scanner; public class scanner { public static void main(String[] args) { //创建一个扫描器对象,用于接收键盘数据 Scanner scanner=new Scanner(System.in); System.out.println("使用next方法接收"); if (scanner.hasNext()){ //使用next方法接收,程序等待用户输入 String str=scanner.next(); System.out.println("输入内容为:"+str); } //IO流操作的类,用完关闭释放资源 scanner.close(); }
next()
1、一定要读取到有效数据才能结束。
2、对输入有效数据以前的空格,自动将其取消。
3、输入有效数字后,后面的空格,会作为分隔符或结束符,空格后面无有效字符。
4、不能接收带有空格的字符串。
nextLIne()
1、以enter符结束
2、可以获取空格
public static void main(String[] args) { Scanner scanner=new Scanner(System.in); int i=0; float f=0.0f; //判断输入的是否为int类型,返回Boolean类型 if (scanner.hasNextInt()){ i=scanner.nextInt(); System.out.println("整数:"+i); }else { System.out.println("不是整数"); } //判断输入的是否为float类型,返回Boolean类型,输入int型,自动转换为float if (scanner.hasNextFloat()){ f=scanner.nextFloat(); System.out.println("小数"+f); }else{ System.out.println("不是小数"); } scanner.close(); }
浙公网安备 33010602011771号