专注Java教育14年 全国咨询/投诉热线:400-8080-105
动力节点LOGO图
始于2009,口口相传的Java黄埔军校
首页 hot资讯 运算符与表达式的介绍

运算符与表达式的介绍

更新时间:2022-01-11 10:23:01 来源:动力节点 浏览498次

表达式基于一个运算符,使用一个或两个操作数执行特定的操作。操作数可以是常量、变量或函数结果。运算符是算术的、逻辑的和关系的。与 C 一样,一些运算符的功能根据表达式中指定的操作数的数据类型而有所不同。

算术运算符(+、-、*、/、**、%)

算术运算符使用操作数执行数学运算,例如加法和减法。有两种类型的数学运算符:一元和二元。一元运算符使用单个操作数执行操作。二元运算符使用两个操作数执行操作。在复杂表达式中,(两个或多个操作数)计算顺序取决于优先规则。

一元算术运算符

一元运算符是对单个操作数执行操作的算术运算符。脚本语言识别一元运算符否定 (-)。

负一元运算符将表达式的符号从正数反转为负数,反之亦然。净效应是将数字乘以 -1。例子:

a = -10;

前缀运算符在取消引用对象之前递增或递减变量,而后缀运算符在引用变量后递增或递减变量。例子:

A=1; 
B = a++; // b will equal 1, a will equal 2; 
A = 1; 
B = ++a; // b will equal 2, a will equal 2; 
A= 1; 
B = a--; // b will equal 1, a will equal 0;

二元算术运算符

在算术运算符前后插入空格。下面列出了支持的二进制算术运算符。

符号 意义 例子 描述
+ 添加 a + b 添加两个操作数
- 减法 a - b 从第一个操作数中减去第二个操作数
* 乘法 a * b 将两个操作数相乘
/ 分配 一/乙 将第一个操作数除以第二个操作数
** 力量 a ** b 通过第二个操作数的幂来提高第一个操作数
% 百分比 % b 将第一个操作数除以第二个操作数并得出余数部分

运算符优先级

表达式通常从左到右计算。一次计算一个复杂的表达式。计算表达式的顺序由使用的运算符的优先级决定。遵循标准 C 排序。

否定 (-) 一元

力量

乘法、除法和取模

加减

如果表达式包含两个或多个具有相同优先级的运算符,则首先计算左侧的运算符。例如,10 / 2 * 5 将被计算为 (10 / 2),结果乘以 5。

当应首先处理较低优先级的操作时,应将其括在括号内。例如,30 / 2 + 8。这通常计算为 30 除以 2,然后将 8 添加到结果中。如果要除以 2 + 8,则应写为 30 / (2 + 8)。

括号可以嵌套在表达式中。首先计算最里面的括号表达式。

赋值运算符 (= )

使用赋值运算符 (=) 将常量、文字、变量表达式结果或函数结果复制到变量。脚本语言不支持在单个语句中进行多个赋值(例如 a=b=c=0)。字符串长度是根据分配给变量的字符串大小定义的,并且可以在运行时动态更改。

逻辑运算符(AND、OR)

逻辑运算符允许在一次比较中组合多个关系测试。逻辑运算符返回 TRUE (1) 或 FALSE (0) 值。逻辑运算符的优先级低于算术运算符。

字符串比较

如果两个字符串逐个字符匹配并且长度相同,则认为它们相等。字符串逐个字符进行比较,从左到右,直到所有字符都匹配或字符串之一用完。如果在相应字符串的结尾之前遇到一个字符串的结尾,则认为这些字符串的长度不相等并导致不相等的条件。

如果字符串中的任何字符与另一个字符串中的相应字符不匹配,则比较停止并且字符串被视为不相等。字符串区分大小写。例子:

Str1 = "abcdefg"; 
Str2 = "abcdefg"; 
Str3 = "abcdef"; 
Str4 = "ABCDEFG"; 
If (str1 == str2)... results in an equal/true conditions 
If (str1 == str3).... Results in a not equal condition 
because str3 is shorter than str1 
If (str1 == str4) ... Results in a not equal condition 
because the strings are of different case;

字符串连接运算符 (+)

Plus(+) 运算符在应用于字符串时,会导致两个字符串的连接。例子:

Str1 = "abc"; 
Str2 = "def"; 
Str3 = str1 + str2; results in "abcdef"

以上就是关于“运算符与表达式的介绍”,大家如果想了解更多相关知识,不妨来关注一下动力节点的Java在线学习,里面的课程内容全面,从入门到精通,很适合没有基础的小伙伴学习,希望对大家能够有所帮助。

提交申请后,顾问老师会电话与您沟通安排学习

免费课程推荐 >>
技术文档推荐 >>