判断和循环
判断结构
if语句
格式1:
if(关系表达式){
语句体;
}
Demo
import java.util.Scanner;
public class IfDemo1 {
public static void main(String[] args) {
/*需求:
键盘录入女婿酒量,如果大于2斤,老丈人给出回应,反之不回应
*/
Scanner sc = new Scanner(System.in);
System.out.println("请输入女婿的酒量:");
int ability = sc.nextInt();
if (ability > 2){
System.out.println("渣渣,喝不倒我,就别想穿我的小棉袄!");
}
}
}
在语句体中只有一句代码时,大括号可以省略不写**(不建议这么写)**
if(关系表达式)
语句体;
格式2:
if(关系表达式){
语句体1;
}else{
语句体2;
}
Demo
import java.util.Scanner;
public class IfDemo2 {
public static void main(String[] args) {
/*需求
键盘录入一个整数,表示身上的钱.
如果大于等于100块,就吃网红餐厅.
否则,就吃经济实惠的沙县小吃
*/
//分析
//定义一个变量price表示身上的钱
Scanner sc = new Scanner(System.in);
System.out.println("请输入身上的钱数:");
int price = sc.nextInt();
if(price >= 100){
System.out.println("网红餐厅我™来辣");
}else{
System.out.println("还是去吃便宜的沙县小吃吧...");
}
}
}
格式3
if(关系表达式1){
语句体1;
}else if(关系表达式2){
语句体二
}
...
else{
语句体 n + 1;
}
Demo
import java.util.Scanner;
public class IfDemo3 {
public static void main(String[] args) {
/*需求
根据不同的需求送不同的礼物
如果是95~100分,送自行车一辆
如果是90~94分,游乐场玩一天
如果是80~89分,送变形金刚一个
如果是80分,揍一顿
*/
//定义变量score记录分数
Scanner sc = new Scanner(System.in);
int score = sc.nextInt();
//对分数进行校验
if (score < 0 && score > 100){
//判断
if (score >= 95 && score <= 100){
System.out.println("给你买个自行车");
} else if (score >= 90 && score <= 94) {
System.out.println("带你去游乐场玩一天");
} else if (score > 80 && score <= 89) {
System.out.println("给你买一个变形金刚");
}else {
System.out.println("揍一顿");
}
}else {
System.out.println("您输入的分数有问题!");
}
}
}
switch语句
格式:
switch(){
case 值1:
语句体1;
break;
case 值2:
语句体2;
break;
...
default:
语句体 n + 1;
break;
}
Demo
import java.util.Scanner;
public class switchDemo1 {
public static void main(String[] args) {
/*需求:
键盘录入星期数,显示今天的减肥活动
周一: 跑步
周二: 游泳
周三: 慢走
周四: 动感单车
周五: 拳击
周六: 爬山
周日: 好好吃一顿
*/
//1.定义变量day记录星期数
System.out.println("请输入今天星期几:");
Scanner sc = new Scanner(System.in);
int day = sc.nextInt();
//判断星期数的合法性
switch (day){
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;
}
}
}
default的位置和省略:
- 位置:default不一定是写在最下面,我们可以写在任意位置,只不过习惯写在最下面
- 省略:default可以省略,语法不会有问题,但是不建议省略
case穿透: 就是语句体中没有写break导致的。
执行流程:
- 首先还是会拿着小括号中的表达式的值跟下面每一个case进行匹配。
- 如果匹配上了,就会执行对应的语句体,如果此时发现了break,那么结束整个switch语句。
- 如果没有发现break,那么程序会继续执行下一个case的语句体,一直遇到break或者右大括号为止。
switch的新特性
只在JDK12版本之后有效
Demo
public class Switchdemo3 {
public static void main(String[] args) {
/*需求
1 2 3 -> 一 二 三
*/
int number = 1;
switch (number){
case 1 -> {
System.out.println("一");
}
case 2 -> {
System.out.println("三");
}
case 3 -> {
System.out.println("三");
}
default -> {
System.out.println("没有这种选项");
}
}
}
}
如果case后面的大括号中只有一句代码,那么这个大括号可以省略
Demo2
public class Switchdemo3 {
public static void main(String[] args) {
/*需求
1 2 3 -> 一 二 三
*/
int number = 1;
switch (number){
case 1 -> System.out.println("一");
case 2 -> System.out.println("三");
case 3 -> System.out.println("三");
default -> System.out.println("没有这种选项");
}
}
}
标签:case,break,java,System,笔记,学习,语句,println,out
From: https://blog.csdn.net/2301_80395418/article/details/137029380