前言
运算符是一些特殊的符号,主要用于数学函数、一些类型的赋值语句和逻辑比较方面。Java中提供了丰富的运算符,如赋值运算符、算数运算符、比较运算符等。
一:赋值运算符
赋值运算符以符号“=”表示,它是一个二元运算符(对两个操作数处理)其功能是讲右作数所含的值赋给左方的操作数
这个表达式是将100赋值给变量a。左方的操作数必须是一个变量,而右边的操作数则可以是在任何表达式,包括变量(a、number)、常量(如123,'book')、有效的表达式(如23*12)。
在项目中创建类Eval,主方法中定义变量,使用赋值运算符为变量赋值。
Java中的算术运算符主要有+(加)、减-(减)、*(乘)、/(除)、%(求余),他们都是二元运算符。
创建ArithmeticOpenator类,输入连两个数字,分别用不同运算符进行计算,代码如下。
三、自增和自减运算符
自增、自减运算符是弹幕运算符,可以放在操作元之前,也可以放在操作之后。操作元必须是一个整型或浮点型变量。自增、自减运算符的作用是使变量的值增或减1。放在操作元前面的自增、自减运算符,会先将变量的值加1(减1),然后再使用该变量参与表达式的运算。放在操作元后面的的自减运算符,会先使变量表达式的运算,然后将该变量加1或减1。
一.举个例子
“++a”与“a++”的作用都相当于a=a + 1,假设a=4,则:
四、逻辑运算符
1、逻辑运算符
逻辑运算符包括&&(逻辑与)、||(逻辑或)、!(逻辑非)。逻辑运算符必须是boolean型数据。
口诀:
逻辑与(&&):两者都为真,结果才是真。
逻辑或(||):只要有一者为真,结果就是真。
逻辑非(!):非真即假,非假即真。
2、位运算符
位运算符除“按位与”和“按位或”运算符外,其他只能处理用于处理整数的操作数,包括byte、short、char、int和long等数据类型。
口诀:
按位与(&):两者都为1,结果才是1。
按位或(|):只要有一者为1,结果就是1。
按位取反(~):0变1,1变0
按位异或(^):两者相同为0,不同即为1。
3、移位操作
<<: 左移 整体左移,空位补0,溢出去掉。
>> : 右移 整体右移,正数补0,负数补1。
>>>:无符号右移 整体右移,空位补0,溢出去掉。
三元运算符的运算规则为:若条件式的值为ture,则整个表达式取值1,否则取值2。例如:
表达式“20<45”的运算结果返回为真,那么Boolean型变量的值取ture,反之,如果表达式的运算结果返回值为假,那么Boolean型变量b取值为false。
三元运算符等价于if…slse语句,例如上述代码等价于:
运算符优先级
Java中的表达式就是使用运算符链接起来的符合Java规则的式子。运算符的优先级决定了表达式中运算只想的先后顺序。通常,优先级由高到道低得依次顺序是:
增量和减量运算符。
算数运算符
比较运算
逻辑运算
5、数据类型转换
数据类型转化是讲一个值从一种类型更改为另一种类型的转换。例如,可以将String类型的数据“457”转换为数值型,也可以将任意的数据类型转换为String类型。
如果从低精度数据类型向高精度数据类型转换,则永远不会溢出,并且总是成功的;而把高精度数据类型向低精度类型转换时,则会有信息丢失,有可能失败。
1.1隐式类型转换 举个栗子: 可以将int类型变量直接赋值给float型变量,此时int型变量将隐式转换为另一种类型的数据,代码如下: 在项目中创建类Conver,在主方法中创建不同数值类型的变量,实现将各变量隐式转换。 运行结果如下: 1.2、显示类型转换 当把高精度的变量值赋给低精度的变量时,必须使用显示类型转换(强制类型转换)。
从低级类型向高级类型的转换,系统将自动执行,程序无须任何操作。这种类型的转换称为隐式转换。下列节本数据类型会涉及数据转换,不包括逻辑类型和字符类型。这些类型按精度从低到高的顺序为byte