Java用户交互Scanner
1、用户交互Scanner
Scanner对象,java提供的一个工具类(获取用户的输入)
基本语法:Sanner s = new Scanner(System.in);
字符串通过Scanner类的next()与nextLine()方法获取,读取前可使用hasNext()与hasNextLine()判断是否还有输入的数据。
package ScannerTest;
import java.util.Scanner;
public class Demo1 {
public static void main(String[] args){
System.out.println("输入");
Scanner scanner = new Scanner(System.in);
if(scanner.hasNextLine()){
String str =scanner.nextLine();
System.out.println("输入结果"+str);
}
scanner.close();
}
}
next():对输入有效字符之前的空白会自动去除,以空白为结束符,无法得到带有空格的字符串
nextLine():以Enter为结束,空白视为有效字符。
2、顺序结构
基本结构为顺序结构,最简单的数据结构,即从上到下执行。
3、选择结构
包含判断语句的即为选择结构,常用的选择结构包含:
1、if单选择结构
2、if双选择结构
3、if多选择结构
4、嵌套if
5、switch多选择
package ScannerTest;
import java.util.Scanner;
public class Demo2 {
public static void main(String [] args){
System.out.println("请输入内容:");
Scanner scanner = new Scanner(System.in);
Scanner scanner2 = new Scanner(System.in);
String str = scanner.nextLine();
if(str.equals("camp")){
System.out.println(str);
if(scanner2.hasNextInt()){
System.out.println("输入不为整数类型");//if语句嵌套
}
}
//if单选择
else if(str.equals("camp1")){
System.out.println(str);
}//if多选择
else{
System.out.println("error");
}//if双选择
/*
一旦其中一个else if语句检测为true,其他else if和else语句跳过执行
switch (expression){
case value://语句
break;
case value://语句
break;
case value://语句
break;
default:
}//switch语句语法
*/
scanner.close();
scanner2.close();
}
}
switch语句中的变量可以是:byte,short,int或char,String(Java SE 7版本后支持)
同时case标签必须为字符串常量或字面量。
需知:如不加break语句,switch会将所有语句执行完(switch穿透),与if判断为true后会跳语句不同。
4、循环结构
1、if语句
2、while语句(do...while语句,while()语句)
3、for语句
5、break&continue
break;跳出循环
continue跳出本次循环,返回循环判断处继续执行
标签:注明跳出循环后返回点