涨知识-赋值运算符作为判断条件的是否执行

挺疑惑的
本来只是探究关于逻辑运算符
如果能判断出结果后半部分就不继续执行了
比如这里把i<j换成i>j,k输出为3
但是我写i<j
我的b=i<j
应该是实打实运行了,我搜了一下赋值运算符返回值是等号右边的结果
但是我输出
b
还是false???

public class Main {
			public static void main(String[] args) {
    			int i = 1, j = 2, k = 3, m = 4;
  				boolean b;
  				if(b = i < j && k++ > m) {
  					
  				}
  				System.out.println(b);
  				System.out.println(b = i < j);
   				System.out.println(k);
			 }
	}
输出
false
true
4

这里其实我还没搞清楚

我的理解是

作为我们的条件
他只在乎返回的结果,而不会去运行整个 b=i<j
只会判断赋值运算符
然后看=右边
判断i<j
为false
然后就进行向下执行了?

在这里插入图片描述
新发现
只有我把两个条件都改对的时候
b=i<j
才会真正的运行

我到时去问一下老师
给大家答复!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小袁拒绝摆烂

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值