- 前言
- 一、if条件分支
- 1、语法格式:
- 2、判断奇偶
- 3、判断正负
- 4、判断是否是闰年
- 5、悬垂else
- 二、switch开关语句
- 1、基础语法
- 三、break和continue语句
- 1、break语句:
- 找到100~200中第一个三的倍数
- 2、continue语句:
- 找到100~200中所有的倍数
- 四、循环语句
- 1、for循环
- 基础语法
- 计算1~100的和
- 计算5!
- 计算5!+4!+3!+2!+1!
- 2、while循环
- 基本语法
- 计算1~100的和
- 计算1~100奇数的和, 1 ~100偶数的和
- 计算5!
- 计算5!+4!+3!+2!+1!
- 3、do while循环
前言
本模块主要学习if条件分支语句、switch开关语句、循环语句、break和continue语句
一、if条件分支 1、语法格式:
if (表达式) {//表达式为真时,执行语句1 语句1; } else {//否则执行语句2 语句2; }2、判断奇偶
int n = 0; if (n % 2 == 0) { System.out.println("是偶数"); } else { System.out.println("是奇数"); }3、判断正负
int n = 10; if (n > 0) { System.out.println("是正数"); } else if (n == 0) { System.out.println("是0"); } else { System.out.println("是负数"); }4、判断是否是闰年
int year = 2000; if (year % 100 == 0 ) {//世纪闰年 if (year % 400 == 0) { System.out.println("是闰年!"); } else { System.out.println("不是闰年!"); } } else {//普通闰年 if (year % 4 == 0) { System.out.println("是闰年!"); } else { System.out.println("不是闰年!"); } }
优化一下:
int year = 2000; if (year % 400 == 0 || year % 4 == 0 && year % 100 != 0) { System.out.println("是闰年!"); } else { System.out.println("不是闰年!"); }5、悬垂else
int x = 10; int y = 20; if (x == 20) if (y == 20) int year = 2000; System.out.println("aaaa"); else System.out.println("bbbb");
结果:没有输出,原因:else只和最近的if相结合,x=10不进入循环,所以什么也不打印
实际表示为:
int x = 10; int y = 20; if (x == 20) { if (y == 20) { int year = 2000; System.out.println("aaaa"); } else { System.out.println("bbbb"); } }二、switch开关语句 1、基础语法
int a = 1; switch(a) { case 1: System.out.println("1"); break; case 2: System.out.println("2"); break; default : System.out.println("输入错误"); break; }
- switch语句首先计算表达式的值,如果表达式的值和某个case后面的常量值相等,就执行该case里的若干个语句,直到碰到break语句为止。
- 若是一个case中没有break,在执行完这个case中的语句后还会继续执行后面的case里的若干个语句,直到遇到break为止。
- 如果switch的表达式不与任何case的常量值相等,那么就执行default中的语句,如果没有default,那么switch语句不会进行任何处理。
- 不能做switch的参数类型有:float、double、long、boolean。
- 能做参数类型的有:整数、枚举、字符、字符串。
- switch支持嵌套,但是不太美观,所以尽量不要使用。
- 结束整个循环
int i = 100; while (i <= 200) { if (i % 3 == 0) { System.out.println("找到了第一个3的倍数,为" + i); break;//让循坏提前结束 } i++; }2、continue语句:
- 结束本次循坏
int i = 100; while (i <= 200) { if (i % 3 != 0) { i++; continue;//跳过这次循坏,立即进入下次循环 } System.out.println("找到了所有3的倍数,为" + i); i++; }四、循环语句 1、for循环 基础语法
for (表达式1;表达式2;表达式3) { 若干语句; }
- 计算表达式1,完成必要的初始化工作;
- 判断表达式2的值,为真则执行若干语句,为假就执行表达式3;
- 执行完若干语句之后,在执行表达式3;
int sum = 0; for (int i = 1; i <= 100; i++) { sum += i; } System.out.println(sum);计算5!
int ret = 1; for (int i = 1; i <= 5; i++) { ret *= i; } System.out.println(ret);计算5!+4!+3!+2!+1!
int sum = 0; for (int i = 1; i <= 5; i++) { int ret = 1; for (int j = 1; j <= i; j++) { ret *= i; } sum += ret; } System.out.println(sum);2、while循环 基本语法
while (表达式) { 若干语句; }计算1~100的和
int sum = 0; int i = 0; while (i <= 100) { sum += i; i++; } System.out.println(sum);计算1~100奇数的和, 1 ~100偶数的和
int i = 1; int sum1 = 0; int sum2 = 0; while (i <= 100) { if (i % 2 != 0) { sum1 += i; } else { sum2 += i; } System.out.println(sum1);// 偶数和 System.out.println(sum2);// 奇数和计算5!
int n = 5; int ret = 1; while (n <= 5) { ret *= i; i++; } System.out.println(ret);计算5!+4!+3!+2!+1!
int i = 1; int n = 5; int sum = 0; int ret = 1; while (i <= n) { ret *= i; sum += ret; i++; } System.out.println(sum);3、do while循环
do { 若干语句; } while (表达式);
至少会被执行一次,例如
int i = 0; do { System.out.println("hhhhhh"); } while (i != 0);
输出hhhhh
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)