Java运算符与数据类型详解

需积分: 26 1 下载量 38 浏览量 更新于2024-09-09 收藏 76KB DOCX 举报
"Java运算符、数据类型以及特殊字符转义和Math库" 在Java编程语言中,运算符是用于执行特定操作的关键字或符号。它们的优先级和结合性对于理解和正确使用表达式至关重要。以下是一些重要的Java运算符及其优先级: 1. **方法调用**:`[].()`具有最高的优先级,从左到右进行计算。 2. **一元运算符**:`!~++--+(一元运算).(一元运算)()(强制类型转换)new`的优先级次之,从右到左进行计算,其中`++`和`--`作为前缀或后缀时有不同的优先级。 3. **乘法和除法**:`*/%`的优先级高于加减运算,从左到右计算。 4. **加法和减法**:`+-`的优先级相同,从左到右计算。 5. **移位运算符**:`<<>>>`具有较高的优先级,同样是从左到右计算。 6. **比较运算符**:`<<=>>=instanceof`用于比较,优先级较高,从左到右计算。 7. **相等和不等运算符**:`==!=`用于检查两个值是否相等或不等,优先级相同,从左到右计算。 8. **按位与运算符**:`&`执行按位逻辑与操作,优先级高,从左到右计算。 9. **按位异或运算符**:`^`执行按位逻辑异或操作,优先级高,从左到右计算。 10. **按位或运算符**:`|`执行按位逻辑或操作,优先级高,从左到右计算。 11. **逻辑与运算符**:`&&`执行短路逻辑与操作,优先级高,从左到右计算。 12. **逻辑或运算符**:`||`执行短路逻辑或操作,优先级高,从左到右计算。 13. **三目运算符**:`?:`用于条件表达式,优先级较低,从右到左计算。 14. **赋值运算符**:`= += -= *= /= %= &= ^= |= <<= >>= >>>=`用于赋值,优先级最低,从右到左计算。 Java提供了多种数据类型,包括整型、浮点型、字符型和布尔型: 1. **整型**: - `int`:4字节,取值范围为-2147483648到2147483647。 - `short`:2字节,取值范围为-32768到32767。 - `long`:8字节,取值范围为-9223372036854808到9223372036854807。 - `byte`:1字节,取值范围为-128到127。 2. **浮点型**: - `float`:4字节,有效位数约为6-7位,最大值约为±3.40282347E+38F。 - `double`:8字节,有效位数为15位,最大值约为±1.79769313486231570E+308。 3. **字符型**: - `char`:2字节,用于存储单个字符。 4. **布尔型**: - `boolean`:1字节,表示真(True)或假(False)。 在Java中,有一些特殊字符的转义序列,用于在字符串中插入特殊字符: - `\b`:退格,Unicode值\u0008 - `\t`:制表,Unicode值\u0009 - `\n`:换行,Unicode值\u000a - `\r`:回车,Unicode值\u000d - `\"`:双引号,Unicode值\u0022 - `\'`:单引号,Unicode值\u0027 - `\\`:反斜杠,Unicode值\u005c Java的`Math`类提供了一系列数学函数,如三角函数、对数和其他数学运算: - `Math.sin(x)`:计算弧度x的正弦。 - `Math.cos(x)`:计算弧度x的余弦。 - `Math.tan(x)`:计算弧度x的正切。 - `Math.exp(x)`:计算e(自然对数的底数)的x次幂。 - `Math.log(x)`:计算x的自然对数。 - `Math.log10(x)`:计算以10为底的x的对数。 - `Math.PI`:π的近似值。 - `Math.E`:e的近似值。 - `Math.atan(x)`:计算x的反正切。 - `Math.atan2(y, x)`:计算从原点到点(x, y)的角的弧度值。 在数值类型之间进行转换时,需要注意可能存在的精度损失。例如,将`double`转换为`int`会丢弃小数部分。枚举类型`enum`和字符串`String`也是Java中的重要概念,其中`substring`用于提取子字符串,`equals`用于比较字符串内容,`length`用于获取字符串的长度,而`null`表示对象引用的空值。