1、复合语句
if条件语句
使用场景:boolean类型判断、一个范围的判断、几个常量值的判断
有左大括号就没有分号,有分号就没有左大括号。
如下:
public class demo1 { static int x = 1;//定义成员变量x //以下包含权限修饰符、静态修饰符、返回值修饰符以及主方法main() public static void main(String[] args){ int x = 2;//定义局部变量x int y=3; if (x==y); { System.out.println("依然会输出"); } } }
此时{}内与if (x==y)无关,”;“代表停止,if (x==y)变空语句体。()内的表达式必须是boolean类型
if...else语句也可以使用三元运算符进行简化
if (x>0){ z=y; } else { z=x; } //可简化成如下语句 z=x>0?y:x;
if...else if多分支语句结构
if(){ } else if{ }
...
switch多分支语句
使用场景:针对几个常量值的判断
语法结构,注意case的常量值必须互不相同。
switch(表达式) { case 常量1 语句块1 [break;]//break省略结果会出现case穿透,case1和case2同时出现在输出结果 ... case 常量n 语句块n [break;] default://可省略,但不建议,为不正确的情况给出提示信息 语句块 [break;]//可省略 }
demo:键盘输入1~7,输出星期一~日
import java.util.Scanner;//导包 public class demo2 { public static void main(String[] args){ //创建录入对象 Scanner sc = new Scanner(System.in); //控制键盘录入数据 System.out.println("请输入1~7"); int week = sc.nextInt(); switch (week){ case 1: System.out.println("星期一"); break; case 2: System.out.println("星期二"); break; ... case 7: System.out.println("星期日"); break; default: System.out.println("程序错误"); break; } } }
2、循环语句
三种循环语句优先考虑for,其次while,最后考虑使用do...while。
while循环语句
while(判断条件语句) { 循环体语句; 控制条件语句; } //示例 public class getsum{ public static void main(String[] args){ int x = 1; int sum=0; while(x<10){ sum = sum + x; x++; } } }
注意因为while在括号加“;”出现死循环,如:while(x==5);
do...while循环语句
先执行一次循环再判断条件,循环至少被执行一次
do{ 循环体语句; 控制条件语句; } while(判断条件语句);//注意这里要加分号结束
for循环语句
表达式1:变量初始化
表达式2:循环条件表达式,boolean型表达式
表达式3:操作表达式,修整变量
for(表达式1;表达式2;表达式3;)//for括号里的变量在{}外不能访问,变量及早的从内存中消失可以提高内存的使用效率 { 循环体语句; }
科普一下水仙花数,什么是水仙花数?
是一个三位数,且满足每个位上的数字的 3次幂之和等于它本身,例如153=1^3+5^3+3^3
for嵌套九九乘法表
public class chengfabiao { public static void main(String[] args){ for(int x = 1;x <= 9;x++){ for(int y = 1;y <= x;y++){ System.out.print(y+"*"+x+"="+y*x+" "); } System.out.println(); } } }
3、循环控制
break语句
遇到break,跳出循环
continue语句
continue不是立即跳过本次循环,而是跳过本次循环结束前的语句,回到循环的条件测试部分