Java基础教程之运算符

开课吧开课吧锤锤2021-07-22 11:41

已知的运算符都有加减乘除,在计算机中对应的是+、—、*、/,用于数学运算,对于这样的基本用法大家已经很熟悉了,我们专门挑重难点来做:  

Java基础教程之运算符

1、“+”号的三种用法:  

第一种就是我们常规的数学加法用于整型数据:inta=10+5;  

第二种是用于char类型的加法:charb='a';intc=b+3;结果是c=100;相信看了上篇我们提到ASCII码表,就知道'a'对应int值为97;  

第三种才是我们的重点,用于连接字符串:Stringstr="Ja",Stringstr1="va";Stringstr2=str+str1;结果是str2="Java";  

2、前++与后++的区别:  

前++:如inti=1,j;j=i++;则结果为j=1,运算完的i变为2;前++中变量在++前,因此先把变量的值赋给等号左边,再进行自增;  

后++:如inti=1,j;j=++i;则结果为j=2;运算后的i也变为2;后++中变量在++后,故先进行自增,再赋值;只需要记住变量在前还是后即可灵活判断。  

注意:(1)单独使用时,如:++i或i++,前++与后++一样,都是进行自增运算。  

(2)前减减与后减减和加加用法一致,不再举例。  

(3)只有变量可以进行加加或减减。  

3、“=”的多种用法:  

(1)赋值:如inti=19;  

(2)+=和-=:如inti=0;i+=1;结果i=2;i+=相当于i=i+1;换成减号时用法一样,也可等效为后++和后--。  

(3)*=和/=:与+=用法一致,改变符号即可。inti=9;i/=3;结果i=3、  

(4)比较常用的%=取余:inti=10;i%=3;结果i=1;求余数,取整数。  

4、这里我们补充一个知识点,在jdk9之后的开发工具中隐含了强制转换。

这一特性被称为“常量优化”,只针对char、short、byte类型的变量在进行数学运算时:  

示例如下,注意类型的变化。  

Java基础教程之运算符

我们使用的是JDK11的版本,自动进行了常量优化。  

5、关于逻辑运算符中的“短路”现象:  

当我们在条件判断时使用&&和||时,根据左边的运算结果已经能够得到整个条件判断的结果时,后边的表达式将不再进行运算,导致右边表达式像被短路了一样不运行。  

例如:if((a+=3)>10&&(b+=3)<5),若(a+=3)>10为假,则结果为if(false);那么这时右边的(b+=3)<5将不会被运算,即被短路。  

6、三元运算符:  

格式:结果=布尔表达式?a:b;布尔表达式的结果为true,则返回结果a;若为false,返回结果b;  

使用场景:二选一。  

注意,三元运算的结果必须被接收。  

例如:intmax=a>b?a:b;//求a与b中的最大值。  

7、条件判断中运算符==和!=的注意要点:  

==用于基本数据类型时,是判断值是否相等;用于对象时是判断地址是否相等。  

若要判断对象的值是否相等,可使用equals方法:对象1、equals(对象2);  

使用equals()需注意,对于java自带的工具类中已重写Object类的equals()方法,因此使用equals()方法时是判断值是否相等;  

但对于我们自己编写的类的对象,如果我们没有重写equals()方法,则默认判断地址,相当于==。  

关于equals()方法的用法,后面我们会再详细介绍。  

!=用于判断是否不等,与==相反。  

以上就是开课吧广场小编为大家整理发布的“Java基础教程之运算符”一文,更多Java教程相关内容尽在开课吧Java教程频道。

免责声明:本站所提供的内容均来源于网友提供或网络搜集,由本站编辑整理,仅供个人研究、交流学习使用。如涉及版权问题,请联系本站管理员予以更改或删除。
有用
分享