欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

运算符

最编程 2024-08-05 11:47:06
...

定义:所谓运算符,就是用来对变量、常量、字面量进行操作的符号。

①当算术表达式中包含多个基本数据类型的数据时,表达式运算结果的数据类型将与表达式中最高等级操作数的数据类型保持一致,且所有byte/short/char类型的数据将会被自动提升为int类型。(前提是算数表达式中包含变量。如果表达式中的操作数都是字面量,表达式运算结果的数据类型将参考“数据类型”文章③中定义的规则)。

②如果除法运算符两侧的操作数都是整数类型的数据,除数不可以为0;如果除法运算符两侧的操作数有一个/两个是浮点数类型的数据,除数可以为0,此时,如果被除数为正数,运算结果为POSITIVE_INFINITY,如果被除数为负数,运算结果为NEGATIVE_INFINITY,如果被除数为0,运算结果为NAN。

③如果求余运算符两侧的操作数都是整数类型的数据,除数不可以为0;如果求余运算符两侧的操作数有一个/两个是浮点数类型的数据,除数可以为0,此时,不论被除数是正数还是负数,运算结果都是NAN。

④所有的POSITIVE_INFINITY都是相等的,所有的NEGATIVE_INFINITY都是相等的,而NAN不与任何值相等,包括NAN。

⑤自加运算符/自减运算符不能操作常量、字面量、表达式。自加运算符/自减运算符既可以出现在操作数的左边,也可以出现在操作数的右边。当出现在操作数的左边时,表示先把操作数加1/减1,然后把操作数放入表达式中运算;当出现在操作数右边时,表示先把操作数放入表达式中运算,然后对操作数加1/减1。

⑥赋值运算符支持连续赋值(如a=b=c=10),但不建议这样使用,会降低程序的可读性。

⑦“>”、“>=”、“<”、“<=”两侧的操作数只能是数值类型的数据;“==”、“!=”两侧的操作数可以是数值类型的数据、布尔类型的数据、引用类型的数据,且两侧操作数的数据类型必须保持一致/两侧操作数的数据类型具有父子关系。

⑧逻辑运算符两侧的操作数只能是布尔类型的数据;位运算符两侧的操作数只能是数值类型的数据。

⑨“&”:不管左侧操作数的值是什么,都会判断右侧操作数的值;“&&”:如果左侧操作数的值为false,不再判断右侧操作数的值;“|”:不管左侧操作数的值是什么,都会判断右侧操作数的值;“||”:如果左侧操作数的值为true,不再判断右侧操作数的值。(逻辑运算符)

⑩“<<”:不管左侧操作数是正数还是负数,均在低位补0;“>>”如果左侧操作数是正数,在高位补0,如果左侧操作数是负数,在高位补1;“>>>”不管左侧操作数是正数还是负数,均在低位补0。(位运算符)(注:数据在计算机中以补码的形式存在。)