关于自增运算符和逻辑运算符一些使用误区

关于自增运算符和逻辑运算符一些使用误区

自增运算符

总结

  1. 对于自增运算符本身变量来说,自增符号无论是在前还是后,其结果都是一样的在原有基础上增加后减少1;
  2. 对于赋值给其他变量来说,自增符号的前后是会导致结果的不同:
    • 若形式是k=++i,则此时变量k的数值是变量i加过1后的数值,原则是:先增加后赋值,故变量k的值与i加1后的值一致;
    • 若形式是k=i++,则此时变量K的数值是变量i没有加过1的数值,原则是:先赋值后增加,故此时变量k的数值是i原来的数值。

具体代码如下

自增符号在变量后面
			int m=1;
			int g=m++;
			System.out.println("这个是自增符在变量后面"+g);
			System.out.println("它本身的值是"+m);

运行结果:
在这里插入图片描述

自增符号在变量前面
			int m=1;
			int k=++m;
			System.out.println("这个是自增符在变量前面"+k);
			System.out.println("它本身的值是"+m);![在这里插入图片描述](https://img-blog.csdnimg.cn/2021010323415368.png#pic_center)

运行结果
在这里插入图片描述

位于运算与逻辑运算

总结

  1. 从布尔类型运算来看,二者结果运算均是false;

  2. 从运行机制来看,逻辑运算它参与程序的中断操作,而位于没有,具体如下:

    • 表达式1 && 表达式2
      • 按逻辑运算进行时,若表达式1是false,则表达式2不在进行;
      • 按位运算进行时,虽然表达式1是false,但是程序仍然会对表达式2进行执行。
具体代码
逻辑运算
public class BitOperator{
	public static void main(String [] args){
		boolean bool;
		int n=4,m=5;
		// 此时为位运算,虽然bool这个已经是假命题,
		bool = m<3 && m>n--;
		System.out.println(n);// 此时n值为4
		System.out.println(bool);
	}
}

运行结果:
在这里插入图片描述

位运算
public class BitOperator{
	public static void main(String [] args){
		boolean bool;
		int n=4,m=5;
		bool = m<3 & m>n--;
		System.out.println(n);// 此时n应该执行减一操作,即为3
		System.out.println(bool);
	}
}

运行结果:
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值