1.if选择结构
-
if选择
-
if双选择
Scanner scanner = new Scanner(System.in); int a=scanner.nextInt(); if(a>=60&&a<=100) {System.out.println("合格"+a);} else System.out.println("不合格"); if(a>=85&&a<=100) System.out.println("真优秀"); scanner.close();
- if else配套使用
-
if多选择
Scanner scanner = new Scanner(System.in); int a=scanner.nextInt(); if(a>=0&&a<60) System.out.println("继续加油哇,差"+(60-a)+"分就合格了"); else if(a>=60&&a<90) System.out.println("合格了合格了"); else if(a>=90&&a<100) System.out.println("真厉害啊,"+a+"分"); else if(a==100) System.out.println("恭喜,满分"); else System.out.println("珍牛鼻啊,我打小就没你这么牛鼻!"); scanner.close();
- if后必须跟else,且else必须在最后
- 一个if后可以有多个else,但必须在else之前
- 若其中一个语句检测为true,其他的else if语句将不执行(注意顺序)
-
嵌套的if语句(折半查找)
-
switch多选择结构
String day="19991102"; switch (day){ case "19760508": System.out.println("dad"); case "19740307": System.out.println("mom"); case "20121116": System.out.println("bro"); case "19991102": System.out.println("mine");
- switch case结构
- 判断一个变量于一系列值中某个值是否相等,每个值称为一个分支
- 变量类型:byte、short、int、char、String(javaSE7开始)
- 注意:
- case标签必须是字符串常量或者字面量
- case与break搭配使用
2.循环结构
1.while
-
先判断,再执行
-
布尔表达式正确将一直循环:while(true);死循环
-
表达式失效(错误),循环停止
-
服务器的请求响应监听会需要用上死循环,其他情况尽量避免
//简单while代码 public class while循环 { public static void main(String[] args) { //输出1-100并求和 int i=0; int sum=0; //循环 while(i<100) { i++; sum=sum+i; System.out.println(i);} System.out.println(sum); } }
2.do while
- 先执行,再判断
- 至少执行一次
//简单代码
public class dowhile循环 {
//先执行,后判断
public static void main(String[] args) {
int i=0;
int sum=0;
do{ i++;
sum=sum+i;
System.out.println(i);
}
while(i<100);
System.out.println(sum);
}
}
3.for循环
- 支持迭代的通用结构,最有效最灵活的循环结构
- 循环次数是在执行前就确定
- 格式如下
for(初始化;条件判断;迭代)
for(i=0;i<=100;i++)
-
与while比较
public class for循环 { public static void main(String[] args) { //for while比较 int a=0; while(a<100) {a++; System.out.println(a); } System.out.println("while循环结束"); System.out.println("=============================="); for(a=1;a<=100;a++) { System.out.println(a); } System.out.println("for循环结束"); } }