Java基础语法——Java运算符

Java基础语法——Java运算符,第1张

Java基础语法——Java运算符

Java运算符的使用

文章目录

前言一、算数运算符二、赋值运算符三、比较(关系)运算符四、逻辑运算符五、三目(条件)运算符六、连接运算符总结


前言

之前我们介绍了什么是变量以及变量的八大基本数据类型,这节我们将要介绍Java中的运算符有哪些,所谓运算符就是对Java的变量进行运算的,同数学一样,Java也有加减乘除等运算,通过算术运算符来表示除此之外还有赋值运算符、比较运算符、逻辑运算符、三目运算符,下面我们就来具体的看一看


一、算数运算符

  算数运算符可以从数学运算的角度来理解,就是简单的加减乘除等运算

符号含义+加-减*乘/除%模除(求余数)++自加一- -自减一

需要的注意问题:
  1.如何计算获得小数
  我们正常进行1/2,7/2,3/2类似于这种小数计算时如果直接使用

System.out.println(1/2);
System.out.println(7/2);
System.out.println(3/2);
//输出结果为0,3,1

这样的方式是无法获得想要的结果的,需要在运算的数字中至少有一个数字加上小数点,例如:

System.out.println(1.0/2);
System.out.println(7/2.0);
System.out.println(3.0/2.0);
//输出结果为0.5,3.5,1.5

  2.自加自减的问题
  这个问题大家在初学运算符的时候应该已经初步了解过,简单来说就是,++/–出现在变量前,先加,后使用出现在变量后,先使用后加。 例如:

int a = 1;
System.out.println("++a等于:" + ++a);
System.out.println("现在a等于:" + a);
//结果为++a等于:2,现在a等于:2。也就是先将a + 1,然后输出a
int b = 1;
System.out.println("b++等于:" + b++);
System.out.println("现在b等于" + b );
//结果为b++等于:1,现在b等于:2。也就是先将b输出,然后b + 1
int c = 2,d = 3;
c = d++;
System.out.println("c等于:" + c);
System.out.println("现在d的值是:" + d);
//结果为c等于:3,现在d的值是:4,也就是先将d的值赋给c,然后d再+1
二、赋值运算符 符号含义=将=右边的值赋给左边+=加等:a+=3---->a = a + 3-=减等:a-=3---->a = a - 3*=乘等:a*=3---->a = a * 3/=除等:a/=3---->a = a / 3%=模除等:a%=3---->a = a % 3

需要的注意问题:
  1.使用扩展赋值运算符永远不会改变运算结果的类型
  例如:

byte i = 10;
i += 10000;
System.out.println(i);
//结果为26

  其实在我们使用扩展赋值运算符的时候,会自动进行强制类型转换,例如i += 10000相当于i = (byte)(i + 10000),int类型的数字被我们强转为byte类型,精度有损失,所以输出26
  如果i是byte类型,那么i = i + 10 就会报错

byte i = 10;
i = i + 10;//相当于byte类型和int类型相加
System.out.println(i);
//报错
三、比较(关系)运算符 符号含义>大于>=大于等于<小于<=小于等于==等于!=不等于

需要的注意问题:
  1.比较运算符的运算结果是布尔类型,也就是结果只有两种可能要么是true,要么是false
  2.注意区分赋值符号=和等于符号==,这种问题到了后面也是很常见,一开始就要严格要求自己

四、逻辑运算符

  与数学中集合学的那一套类似,且的话就是有一个不成立那么就不成立,或的话就是有一个成立那么就成立

符号含义结果&逻辑与(且)比较的结果中有一个为false那么结果就为false,只有两者都为true,结果才为true│逻辑或(或)比较的结果中有一个为true那么结果就为true,只有两者都为false,结果才为false!逻辑非表达式前面加上!,那么最终的结果与你表达式中的相反,表达式为false,那么!false就为true,表达式为ftrue,那么!true就为false&&短路与与逻辑与的结果相同││短路或与逻辑或的结果相同^异或值相异结果为真

需要的注意问题:
  1.逻辑与(或)与短路与(或)的区别
  他们的主要区别在于是否执行的问题
  短路与(或)在发现有一个值为假(真),那么会直接结束该表达式的运算,后面的表达式将不会去执行,并且是按照从左向右的顺序执行的,也就是如果假(真)的值在后面,那么前面的表达式也会照样执行,
  逻辑与(或)即使发现有值为假(真),也会接着运行完后面的表达式
  
  以短路与和逻辑与为例:

//逻辑与
int num1 = 1,num2 = 1;
boolean bo2 = (0 < num1++)&(2 > num2++);
System.out.println(bo2);
System.out.println("num1为:" + num1);
System.out.println("num2为:" + num2);
//输出结果为:false,num1为:2,num2为:2
//逻辑与纵使前面的表达式值为false,后面的num2++也会执行
//短路与
int num1 = 1,num2 = 1;
boolean bo2 = (0 < num1++)&(2 > num2++);
System.out.println(bo2);
System.out.println("num1为:" + num1);
System.out.println("num2为:" + num2);
//输出结果为:false,num1为:2,num2为:1
//短路与当判断前面表达式的值为false时,直接输出表达式的值为false,后面的num2++跳过执行

  2.异或的理解
  异或目前只要记住一句话值不同则为true,值相同则为false

boolean bo = (5 > 3)^(5 > 3);
System.out.println(bo);
//值为false
五、三目(条件)运算符

  三目运算符其实很容易理解,符合前面给的表达式,则取第一个值,不符合则取第二个值

格式:(关系表达式)?表达式1:表达式2
//先看关系表达式值为true还是false,这里1 < 2明显满
//足,值为true,所以三目表达式返回第一个值4,也就是int a = 4;
int a = 1 < 2?4:2
System.out.println(a);
//结果为4
六、连接运算符

  连接运算符用于println中字符串的连接,作用是将两个字符串连接成为一个字符串,举例即可说明

System.out.println("我" + "爱" + "学习" + "你呢" + "?");
//结果为:我爱学习你呢?
总结

本节主要介绍了运算符的使用及其要注意的问题

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5712936.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存