Java运算符优先级和表达式及数据类型转换

Posted zero澪

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java运算符优先级和表达式及数据类型转换相关的知识,希望对你有一定的参考价值。

计算机程序 在处理数据时会进行大量的计算,而数据的运算则需要借助运算符和表达式来完成
表达式是指由操作数和运算符组成的用于完成某种运算功能的 语句
                        子表达式
                

   Y = X * (     Z    +    10    )

                     表达式

其中YXZ10 称为操作数,=、*、+ 称为运算符。

Java语言中进行表达式求值时,同一优先级的运算符,运算次序由结合性决定,不同优先级的运算符,运算次序由优先级决定

优先级

运算符

结合性

1

()

从左到右

2

!++--

从右到左

3

* / %  

从左到右

4

+ -

从左到右

5

> < >= <=

从左到右

6

== !=

从左到右

7

&&

从左到右

8

||

从左到右

9

= += -= *= /= %=

从右到左

 

不同 类型的数据在进行混合运算时需要进行类型转换,即将不同类型的数据转换为同种类型的数据后再进行 计算。
针对于值类型的数据,类型转换主要包括自动类型转换和强制类型转换。
条件 1 :满足自动类型转换的条件
两种类型要兼容:
数值类型(整型和浮点型)互相兼容
目标类型大于源类型:
例如: double 型大于 int
条件 2 操作数向大操作数类型转换,计算结果也为表达式中大操作数的 类型

强制类型转换可以将大数据类型转化为小数据类型(如将double转换为int),在转换过程中会丢失数据的精度 

以上是关于Java运算符优先级和表达式及数据类型转换的主要内容,如果未能解决你的问题,请参考以下文章

Java运算符优先级和表达式及数据类型转换

Java运算符优先级和表达式及数据类型转换

运算优先级及类型转换

java知识点汇总

Flutter之Dart数据类型及数据之间的转换

JAVA SE基础篇10.运算符优先级与类型转换