Java入门4之分支语句与循环语句

 

目录

 

一、分支语句

1.if语句

1)基本语句

 2)if else语句

 3)else  if语句

 4)if嵌套

2.switch语句

3.if和switch语句的区别

4.局部变量

1)代码块

2)局部变量的概念

3)局部变量的特点

二、循环语句

1.作用

2.分类

3.while语句

1)语法

2)案例

3)代码

4)结果

4.do-while

1)语法

2)特点

3)案例

4)代码

5)结果

 5.for循环

1)语法

2)执行流程

3)案例

4)代码

5)结果

 6.练习

1)打印100以内的偶数

2)计算10的阶乘

3)打印正方形

4)打印直角三角形

5)打印九九乘法表


一、分支语句

1.if语句

1)基本语句

语法:

//语法:
if(条件表达式){
    当条件表达结果为true时,执行的代码
}
//注意:如果大括号只有一行代码,可以省略大括号不写

案例:

案例:小明去网吧上网,年龄大于等于18岁,欢迎来到网络世界

代码:

class Demo01{
    	public static void main(String[] args) {
		int age = 19;
		String name = "小明";
		if (age>=18) {
			System.out.print(name+",");
			System.out.println("欢迎来到网络世界!");
		}
	}
}

结果:

 2)if else语句

 语法:

//if-else语法 
if(条件表达式){
    当条件表达式结果为true时,执行此处代码;
}else{
    当条件表达式结果为false时,执行此处代码;
}

案例: 

案例:小明去网吧上网,年龄大于等于18岁,欢迎来到网络世界
                          不满18岁,抱歉,您未满18周岁

代码 :

class Demo02{
    	public static void main(String[] args) {
		int age = 12;
		String name = "小明";
		if (age>=18) {
			System.out.print(name+",");
			System.out.println("欢迎来到网络世界!");
		}else {
			System.out.println("很抱歉,未满十八周岁");
		}
	}
}

结果:

 3)else  if语句

语法: 

//else-if语法
if(条件表达式1){
    当条件表达式1结果为true时,执行此处代码;
}else if(条件表达式2){
    当条件表达式2结果为true时,执行此处代码;
}else if(条件表达式3){
    当条件表达式3结果为true时,执行此处代码;
...
}else if(条件表达式n){
    当条件表达式n结果为true时,执行此处代码;
}else{
    当上述条件表达式结果都为false时,执行此处代码;
}

案例: 

案例:小明去网吧上网,年龄大于等于18岁,欢迎来到网络世界
               如果年龄小于18岁,提示抱歉,您未满18周岁
               如果年龄大于150岁或小于0岁,提示抱歉,地球不适合您

代码:

public class Demo03 {
	public static void main(String[] args) {
		int age = 200;
		String name = "小明";
		if (age>150||age<0) {
			System.out.println("抱歉,地球不适合您");
		}else if (age>=18) {
			System.out.print(name+",");
			System.out.println("欢迎来到网络世界!");
		}else {
			System.out.println("很抱歉,未满十八岁");
		}
	}
}

结果:

 4)if嵌套

语法: 

//if嵌套语法
if(条件表达式1){
    if(条件表达式2){
        ...
        if(条件表达式n){
                当条件表达式n结果为true时,执行此处代码;
}else{
    上述条件表达式结果都为false时,执行此处代码;
}

案例: 

案例:满1000打9折,会员打8折

代码:

class Demo04{
		public static void main(String[] args){
			double money01 = 2100;
            boolean isVIP = true;
            if(money01 >= 1000){
            	//消费金额大于1000
            	double money02 = money01 * 0.9;
            	if(isVIP){
            		double money03 = money02 * 0.8;
            		System.out.println("本次应付金额为:"+money01+",实付金额:"+money03+",本次优惠:"+(money01-money03));
            	}else{
            		System.out.println("本次应付金额为:"+money01+",实付金额:"+money02+",本次优惠:"+(money01-money02));
            	}
            }else{
            	//消费金额不足1000
            	if(isVIP){
            		double money04 = money01 * 0.8;
            		System.out.println("本次应付金额为:"+money01+",实付金额:"+money04+",本次优惠:"+(money01-money04));
            	}else{
            		System.out.println("本次应付金额为:"+money01+",实付金额:"+money01+",本次优惠:0元");
            	}
            }
		}
	}

结果:

 2.switch语句

语法:

//switch语句
switch(变量){
		case 常量1:
			当变量值等于常量1时执行此处代码;
		break;
		case 常量2:
			当变量值等于常量2时执行此处代码;
		break;
		...
		case 常量n:
			当变量值等于常量n时执行此处代码;
		break;
		default:
			当变量值不等于以上常量时,执行此处代码;
		break;
}

案例:

案例:小程序助你破产,用于节日给女朋友挑礼物

代码: 

class Demo05{
		public static void main(String[] args){
			String tag = "双11";
			switch(tag){
				case "过年":
					System.out.println("发红包");
				break;
				case "元宵":
					System.out.println("去逛街");
				break;
				default:
					System.out.println("暂无此节日,随后更新");
				break;
		}
	}
}

结果:

 3.if和switch语句的区别

1)if语句可以判断区间,switch不可以
2)switch语句在运行效率上比if稍微快一些

4.局部变量

1)代码块

//代码块:
	{}
//变量在那个代码块中声明,就只能在那个代码块中用
//举例:
class Demo06{
	public static void main(String[] args){
		int a = 10;
		int b = 0;
		if(a > b){
		    int c = 12;
		}
		System.out.println(c);
	}
}

2)局部变量的概念

局部变量概念:在方法或方法中的代码块中声明的变量称为局部变量

3)局部变量的特点

特点:
	作用域:在声明该变量的代码块中使用
	命名:同一个方法中变量名不能重复

二、循环语句

 1.作用

循环语句的作用:重复执行一段代码

 2.分类

//循环语句的分类
1)while
2)do while
3)for

3.while语句

1)语法

//语法:
while(条件表达式){
     当条件表达式值为true时,执行此处代码
     此处代码执行完毕后继续判断条件表达式,如果为true,在次执行此处代码
     如果为false,结束循环
}

2)案例

案例:打印10~0之间数

3)代码

public class Demo07 {
	public static void main(String[] args) {
		int num=10;
		while (num<26) {
			if (num == 25) {//如果num是25,则直接打印25
				System.out.print(num);
			}else {/如果num是其他,则打印数字和","
				System.out.print(num + ",");
			}
			num++;
		}
	}
}

4)结果

 因为输出的格式原因,我加入了if分支语句

4.do-while

1)语法

语法:
    do{
        循环体
        先执行一遍循环体,在判断条件表达式是否为true,
        如果为true,继续执行循环体
        如果为false,结束循环
    }while(条件表达式);

2)特点

特点:循环体至少执行一遍

3)案例

案例:打印10~0之间数

4)代码

public class Demo08 {
	public static void main(String[] args) {
		int num = 10;
		do{
			System.out.println(num);
			num--;
			}while(num >= 0);

	}
}

5)结果

 5.for循环

1)语法

语法:
    for(表达式1;条件表达式2;表达式3){
        循环体4
    }
        表达式1:初始化变量
        表达式2:循环条件
        表达式3:改变变量

2)执行流程

执行流程:
1,2,4,3,2,4,3....2

3)案例

案例:使用for完成0~10之间数的打印

4)代码

public class Demo08 {
	public static void main(String[] args) {
		for (int i = 0; i < 11; i++) {
			if (i==10) {
				System.out.print(i);
			}else {
				System.out.print(i+",");
			}
		}
	}
}

5)结果

 6.练习

1)打印100以内的偶数

代码

//打印1~100的偶数
public class Test01{
    public static void main(String[] args){
    	System.out.println("1~100之间的偶数:");
        for(int i=1;i<101;i++){
            if(i%2==0){
                System.out.println(i);
            }
        }
    }
}

结果:

2)计算10的阶乘

代码

public class Test02 {
	public static void main(String[] args) {
		int factorial = 1;
		for (int i = 1; i < 10; i++) {
			factorial *= i;
		}
		System.out.println("10的阶乘:"+factorial);
	}
}

结果

 

3)打印正方形

代码

public class Test03 {
	public static void main(String[] args) {
		for (int i = 0; i < 6; i++) {
			for (int j = 0; j < 6; j++) {
				System.out.print("* ");
			}
			System.out.println();
		}
	}
}

结果

 

4)打印直角三角形

代码

public class Test04 {
	public static void main(String[] args) {
		for (int i = 0; i < 7; i++) {
			for (int j = 0; j <= i; j++) {
				System.out.print("* ");
			}
			System.out.println("");
		}
		System.out.println();
	}
}

结果

 

5)打印九九乘法表

代码

public class Test05 {
	public static void main(String[] args) {
		//外循环控制行数
		for (int i = 1; i <= 9; i++) {
			//内循环控制列数
			for (int j = 1; j <=i; j++) {
				System.out.print(j+"×"+i+"="+(i*j)+"\t");
			}
			System.out.println();
		}
	}
}

结果

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值