标准的if-else语句
public static void main(String[] args) {
int num = 666;
if (num % 2 == 0) { // 如果除以2能够余数为0,说明时偶数
System.out.println("偶数");
} else {
System.out.println("奇数");
}
}
x和y的关系满足如下:
如果x >= 3,那么y = 2x + 1;
如果-1 < x < 3,那么y = 2x;
如果x <= -1,那么y = 2x - 1;
public static void main(String[] args) {
int x = -10;
int y;
if (x >= 3) {
y = 2 * x + 1;
} else if (-1 < x && x < 3) {
y = 2 * x;
} else {
y = 2 * x - 1;
}
System.out.println("结果是:" + y);
}
public static void main(String[] args) {
int score = 98;
if (score >= 90 && score <= 100) {
System.out.println("优秀");
} else if (score >= 70 && score < 90) {
System.out.println("良好");
} else if (score >= 60 && score < 70) {
System.out.println("及格");
} else if (score >= 0 && score < 60) {
System.out.println("不及格");
} else { // 单独处理边界之外的不合理情况
System.out.println("分数错误");
}
}
使用三元运算符和标准的if-else语句分别实现:取两个数字当中的最大值
public static void main(String[] args) {
int a = 105;
int b = 20;
// 首先使用三元运算符
// int max = a > b ? a : b
// 使用if语句
int max;
if (a > b) {
max = a;
} else {
max = b;
}
System.out.println("最大值:" + max);
}
switch语句使用的注意事项:
1、多个case后面的数值不可以重复。
2、switch后面小括号当中只能时下列数据类型:
基本数据类型: byte/short/char/int
引用数据类型: String字符串、enum枚举
3、switch语句格式可以很灵活: 前后顺序可以颠倒,而且break语句还可以省略
“匹配哪一个case就从哪一个位置向下执行,知道遇到lebreak或者整体结束为止。”
public static void main(String[] args) {
int num = 1;
switch (num) {
case 1:
System.out.println("星期一");
break;
case 2:
System.out.println("星期二");
break;
case 3:
System.out.println("星期三");
break;
case 4:
System.out.println("星期四");
break;
case 5:
System.out.println("星期五");
break;
case 6:
System.out.println("星期六");
break;
case 7:
System.out.println("星期七");
break;
default:
System.out.println("数据不合理");
break; // 最后一个break语句可以省略,但是强烈推荐不要省略
}
}
循环结构的基本组成部分,一般可以分成四部分:
1、初始化语句:在循环开始最初执行,而且只能做唯一一次。
2、条件判断:如果成立,则循环继续;如果不成立,则循环退出。
3、循环体:重复要做的事情内容,若干行语句。
4、步行语句:每次循环之后都要进行的扫尾工作,每次循环结束之后都要执行一次。
题目: 求出1-100之间的偶数和。
思路:
1、既然范围已经确定了是1到100之间,那么我就从1、2、3……一直到100那么多数字一个一个检查。
2、总共有100个数字,并非所有数字都有用。必须要是偶数才能用,判断(if语句)偶数: num % 2 == 0
3、需要一个变量,用来进行累加操作。如同一个存钱罐
public static void main(String[] args) {
int sum = 0; // 用来累加的存钱罐
for (int i = 1; i <= 100; i++) {
if (i % 2 == 0) { // 如果时偶数
sum += i;
}
}
System.out.println("1-100之间的偶数和:" + sum);
}
1、如果条件判断从来没有满足过,那么for循环和while循环将会执行0次,但是do-while循环会执行最少一次。
2、for循环的变量在小括号当中定义,只有循环内部才可以使用。while循环和do-while循环初始化语句本来就在外面,所以出来循环之后还可以继续使用。
public static void main(String[] args) {
for (int i = 1; i < 0; i++) {
System.out.println("Hello");
}
// System.out.println(i); // 这一行时错误写法!因为变量i定义在for循环下括号内,只有for循环自己才能用。
System.out.println("===============");
int i = 1;
do {
System.out.println("World");
i++;
} while (i < 0);
// 现在已经超出了do-while循环的范围,我们仍然可以使用变量i
System.out.println(i); // 2
}
break关键字的用法有常见的两种:
1、可以用在switch语句当中,一旦执行,整个switch语句立刻结束。
2、还可以用在循环语句当中,一旦执行,整个循环语句立刻结束。打断循环。
关于循环的选择,有一个小建议:
凡是次数确定的场景多用for循环;否则多用while循环。
public static void main(String[] args) {
for (int i = 1; i <= 10; i++) {
// 如果希望从第4次开始,后续全都不要了,就要打断循环
if (i == 4) { // 如果当前是第4次
break; // 那么就打断整个循环
}
System.out.println("Hello" + i);
}
}
另一种循环控制语句时continue关键字。
一旦执行,立刻跳过当前次循环剩余内容,马上开始下一次循环。
public static void main(String[] args) {
for (int i = 1; i <= 10; i++) {
if (i == 4) { // 如果当前是第4层
continue; // 那么跳过当前次循环,马上开始下一次(第5层)
}
System.out.println(i + "层到了。");
}
}
永远停不下来的循环,叫做死循环。
死循环的标准格式:
while (true) {
循环体
}
public static void main(String[] args) {
while (true) {
System.out.println("Hello");
}
}
题目:显示时间小时分钟秒
public static void main(String[] args) {
for (int hour = 0; hour < 24; hour++) { // 外层控制小时
for (int minute = 0; minute < 60; minute++) { // 内置控制小时之内的分钟
for (int second = 0; second < 60; second++){ // 内置控制分钟之内的秒
System.out.println(hour + "点" + minute + "分" + second + "秒");
}
}
}
}