1. 选择结构
if结构如果只有一条语句,可以去掉大括号,若有多条语句只会控制离它最近的那条,但是不要去掉。
eg:int x = 10; //这其实是两条语句,int x 是一条,x = 10是一条
if语句和三元运算符区别:
- 如果仅仅是赋值没有区别用三元运算符,三元运算符可以嵌套使用但最好分成两步。
- 如果想有输出语句或其他更复杂语句用if语句
if / else if 语句最后的else可以不写
switch(表达式) //表达式可以是byte,short,char,int只要能自动提升为int类型的都可以,jdk1.5版本可以接收枚举,jdk1.7版本可以接收字符串string
case后面只能是常量,不能是变量,多个case后面的值不能一样
default可以省略,类似于else,不一定放在最后,放在最后最好
break最后一个可以省略,其他如果省略会出现case穿透
2. 循环结构
for(int x = 1;x <= 10;x++){ //第一次执行的是初始化语句int x = 1初始化语句只执行一次
//第二次执行的是判断语句x <= 10
//第三次执行的是循环语句System.out.println("hello world");
//第四次执行的是控制语句x++
//第五次执行的是判断语句(二,三,四次不断循环,直到第二次返回的是false)
System.out.println("hello world");
}//由于int x = 1;x变量只在for语句声明中作用,for语句执行完就会释放
int ge = x % 10; //取一个数的个位,十位,百位,找规律
int shi = x / 10 % 10;
int bai = x / 10 / 10 % 10
三种循环结构的区别:
- for和while区别是:建议当循环增量只为了循环而定义的,建议用for语句会节约内存;当循环增量不只为了循环,循环结束以后继续使用,建议while。
- do while和while的区别:while是如果条件不满足,不执行循环体;do while无论条件是否满足,至少会执行一次循环体。
无限循环while(true) for( ; ; ),如果在内部不做任何跳转语句,无限循环下面是不能定义语句,因为永远执行不到。
//输出一个四行五列的星星*图案,for嵌套循环,外层循环决定行数,内层循环决定列数
for(int x = 1;x <= 4;x++){
for(int y = 1;y <= 5;y++){
System.out.print("*"); //print直接输出一排没有换行
}
System.out.println(); //println输出一列有换行
}
标号(标识符)a:可以退出指定循环break a;
continue:终止本次循环,继续下次循环
break和continue应用场景:
break可以应用在switch语句和循环里
continue只能用在循环里
return是用来返回并结束方法的,而break是结束循环