Java流程控制复习
1. 用户交互Scanner
-
通过Scanner类的next()和nextLine()方法获取输入的字符串
注意:
- next():
- 一定要读取到有效字符后才可以结束输入
- 对于输入有效字符前遇到的空白,next()方法会自动将其去掉
- 只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符
- next()不能得到带有空格的字符串
- nextLine()
- 以Enter为结束符,也就是说该方法返回的是回车键之前所有的字符
- 可以获得空白
- next():
-
可以使用hasNext()和hasNextLine()判断是否还有输入的数据
//创建一个扫描器对象,用于接受键盘数据
Scanner scanner=new Scanner(System.in);
if(scanner.hasNext()){
String str=scanner.next();
System.out.println("输出的内容:"+str);
}
//凡是属于IO流的类如果一直不关闭会一直占用资源,要养成好习惯用完就关掉
scanner.close();
>>Hello World
<<输出的内容:Hello
Scanner scanner=new Scanner(System.in);
if(scanner.hasNextLine()){//hasNext()和hasNextLine
String str=scanner.nextLine();
System.out.println("输出的内容:"+str);
}
scanner.close();
>>Hello World
<<输出的内容:Hello World
>>
<<输出的内容:
2.Switch 多选择结构
- switch 语句中的变量类型可以是byte、short、int、char
- 从Java SE 7开始 switch开始支持字符串String类型
- 记得写break;防止case穿透
Scanner scanner=new Scanner(System.in);
String str=scanner.nextLine();
if(str.equals("用户")){
String grade="合格";
switch (grade) {
case "合格":
System.out.println("成绩合格");
break;
case "不合格":
System.out.println("不合格");
default:
System.out.println("成绩未显示");
}
}
scanner.close();
3.反编译补充
4.While、DoWhile、For循环
-
while 先判断后执行,do-while先执行后判断
-
do-while 的循环体至少会执行一次
-
for循环案例
public class MultiplicationTable { public static void main(String[] args) { for(int i=1;i<=9;i++){ for(int j=1;j<=i;j++){ System.out.print(j+"*"+i+"="+(j*i)+"\t"); } System.out.println(); } } }
-
for循环增强
int[] numbers={1,2,3,4,5,6}; for(int x:numbers){ System.out.println(x); }
int[] numbers={1,2,3,4,5,6}; for(int i=0;i<6;i++){ System.out.println(numbers[i]);}
5.break和continue
- break用于强制退出循环,不执行循环剩余的语句(break语句也在switch语句中使用)
- continue用于终止某次循环过程
- goto补充
6.打印几个三角形结尾!!!
for(int i=0;i<=5;i++){
for(int j=0;j<=i;j++){
System.out.print("*"+'\t');
}
System.out.println();
}
for(int i=0;i<=5;i++){
for(int j=5;j>=i;j--){
System.out.print("*"+'\t');
}
System.out.println();
}
标签:Java,scanner,int,流程,System,复习,println,out,Scanner
From: https://www.cnblogs.com/zwy-blogs/p/16767525.html