Java30天养成计划 || 04 Java运算符&流程控制

写在前面,大家好!我是【跨考菌】,一枚跨界的程序猿,专注于后台技术的输出,目标成为全栈攻城狮!这博客是对我跨界过程的总结和思考。如果你也对Java后端技术感兴趣,抑或是正在纠结于跨界,都可以关注我的动态,让我们一起学习,一起进步~
我的博客地址为:【跨考菌】的博客

上一篇Java30天养成计划 || 03 数据类型 讲解了Java中的数据类型自动拆箱装箱类型转换等内容,本文介绍运算符流程控制相关知识点!

在这里插入图片描述


1、运算符

1.1、算数运算符

Java中的算数运算符包括:

在这里插入图片描述

++和–运算:

int i=1;
a=i++;加加在后,先赋值再加。结果为:i=2,a=1;
a=++i;加加再前,先加再赋值。结果为:i=2,a=2;

int j=1;
b=j--;减减在后,先赋值再减。结果为:j=0,b=1;
b=--j;减减再前,先减再赋值。结果为:j=0,b=0;

+在字符串中的运用:
“a”+"b"的结果是“ab”

public static void main(String[] args){
	System.out.println("5+5="+5+5);//输出5+5=55
}

1.2、赋值运算符

Java中的赋值运算符包括:
在这里插入图片描述
赋值运算符,就是将符号右边的值,赋给左边的变量。

public static void main(String[] args){
	int i = 5;
	i+=5;//计算方式 i=i+5 变量i先加5,再赋值变量i
	System.out.println(i); //输出结果是10
}

1.3、比较运算符

Java中的比较运算符包括:

比较运算符,是两个数据之间进行比较的运算,运算结果都是布尔值 true 或者 false

public static void main(String[] args) {
	System.out.println(1==1);//true
	System.out.println(1<2);//true
	System.out.println(3>4);//false
	System.out.println(3<=4);//true
	System.out.println(3>=4);//false
	System.out.println(3!=4);//true
}

1.4、逻辑运算符

在这里插入图片描述

逻辑运算符,是用来连接两个布尔类型结果的运算符,运算结果都是布尔值 true 或者 false

public static void main(String[] args) {
	System.out.println(true && true);//true
	System.out.println(true && false);//false
	System.out.println(false && true);//false,右边不计算
	System.out.println(false || false);//falase
	System.out.println(false || true);//true
	System.out.println(true || false);//true,右边不计算
	System.out.println(!false);//true
}

1.5、三元运算符

格式:数据类型 变量名 = 布尔类型表达式?结果1:结果2

三元运算符计算方式:

  • 布尔类型表达式结果是true,三元运算符整体结果为结果1,赋值给变量。
  • 布尔类型表达式结果是false,三元运算符整体结果为结果2,赋值给变量
public static void main(String[] args) {
	int i = (1==2 ? 100 : 200);
	System.out.println(i);//200
	int j = (3<=4 ? 500 : 600);
	System.out.println(j);//500
}

2、流程控制

2.1、if -else

主要用于多分支流程控制

public static void main(String[] args) {
	int score = 100;
	if(score<0 || score>100){
		System.out.println("你的成绩是错误的");
	}else if(score>=90 && score<=100){
		System.out.println("你的成绩属于优秀");
	}else if(score>=80 && score<90){
		System.out.println("你的成绩属于好");
	}else if(score>=70 && score<80){
		System.out.println("你的成绩属于良");
	}else if(score>=60 && score<70){
		System.out.println("你的成绩属于及格");
	}else {
		System.out.println("你的成绩属于不及格");
	}
}}

2.2、switch

语法:

switch(表达式) {
	case 常量值1:
	语句体1;
	break;
	case 常量值2:
	语句体2;
	break;
	...
	default:
	语句体n+1;
	break;
}

switch语句中,表达式的数据类型,可以是byteshortintcharenum(枚举),JDK7后可以接收字符串

2.3、for

格式:

for(初始化表达式①; 布尔表达式②; 步进表达式④){
	循环体③
}

执行流程:

  • 执行顺序:①②③④>②③④>②③④…②不满足为止。
  • ①负责完成循环变量初始化
  • ②负责判断是否满足循环条件,不满足则跳出循环
  • ③具体执行的语句
  • ④循环后,循环条件所涉及变量的变化情况

在这里插入图片描述

案例:1-100之间的偶数之和

public static void main(String[] args) {
	//1.定义一个初始化变量,记录累加求和,初始值为0
	int sum = 0;
	//2.利用for循环获取1‐100之间的数字
	for (int i = 1; i <= 100; i++) {
		//3.判断获取的数组是奇数还是偶数
		if(i % 2==0){
		//4.如果是偶数就累加求和
		sum += i;
		}
	}
	//5.循环结束之后,打印累加结果
	System.out.println("sum:"+sum);
}

2.4、while循环

格式:

初始化表达式①
while(布尔表达式②){
	循环体③
	步进表达式④
}

执行流程:

  • 执行顺序:①②③④>②③④>②③④…②不满足为止。
  • ①负责完成循环变量初始化。
  • ②负责判断是否满足循环条件,不满足则跳出循环。
  • ③具体执行的语句。
  • ④循环后,循环变量的变化情况。

在这里插入图片描述

案例:求1-100之和

public static void main(String[] args) {
	//使用while循环实现
	//定义一个变量,记录累加求和
	int sum = 0;
	//定义初始化表达式
	int i = 1;
	//使用while循环让初始化表达式的值变化
	while(i<=100){
		//累加求和
		sum += i ;
		//步进表达式改变变量的值
		i++;
	} /
	/打印求和的变量
	System.out.println("1‐100的和是:"+sum);
}

2.5、do-while循环

格式:

初始化表达式①
do{
	循环体③
	步进表达式④
}while(布尔表达式②);

执行流程:

  • 执行顺序:①③④>②③④>②③④…②不满足为止。
  • ①负责完成循环变量初始化。
  • ②负责判断是否满足循环条件,不满足则跳出循环。
  • ③具体执行的语句
  • ④循环后,循环变量的变化情况

在这里插入图片描述

案例:输出10次helloworld

public static void main(String[] args) {
	int x=1;
	do {
		System.out.println("HelloWorld");
		x++;
	}while(x<=10);
}

2.6、循环语句的区别

-控制条件语句所控制的那个变量,在for循环结束后,就不能再被访问到了,而while循环结束还可以继续使用,如果你想继续使用,就用while,否则推荐使用for。原因是for循环结束,该变量就从内存中消失,能够提高内存的使用效率。

已知循环次数的时候使用推荐使用for,循环次数未知的时推荐使用while

2.7、break和continue的区别

1)、break【终止整个循环】

使用场景:终止switch或者循环

  • 在选择结构switch语句中
  • 在循环语句中
  • 离开使用场景的存在是没有意义的
public static void main(String[] args) {
	for (int i = 1; i<=10; i++) {
	//需求:打印完两次HelloWorld之后结束循环
		if(i == 3){
			break;
		} 
		System.out.println("HelloWorld"+i);
	}
}

2)、continue【仅仅是终止本次循环】

使用场景:结束本次循环,继续下一次的循环

public static void main(String[] args) {
	for (int i = 1; i <= 10; i++) {
	//需求:不打印第三次HelloWorld
			if(i == 3){
				continue;
			} 
			System.out.println("HelloWorld"+i);
	}
}

在这里插入图片描述

最后,如果您觉得对您有帮助的话,不要忘记帮助帮博主一键三连😊哦

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值