基本运算符
1. =和 ==的区别
= 是赋值,==是判断关系
在许多编程语言中,= 是赋值运算符,而 == 是等于运算符。
- = 赋值运算符:它将右边的值赋给左边的变量。例如,在 Python 中,x = 5 会将值 5 赋给变量 x。
- == 等于运算符:它用于检查两个值是否相等。如果两个值相等,它返回 True;否则,返回 False。例如,在 Python 中,5 == 5 会返回 True,因为 5 等于 5。所以,= 和 == 在功能和用途上有很大的区别。一个是用于赋值,另一个是用于比较两个值是否相等。
2. i++与 ++i的关系
i ++ 是先赋值,后运算
++ i 是先运算,后赋值
在编程中,i++ 和 ++i 的区别主要在于它们的顺序。
- i++ 是后置自增运算符。这意味着在进行任何其他运算之前,它首先会将 i 的值增加 1。然后,这个新的值(即 i 原来的值加上 1)会被赋给 i。
- ++i 是前置自增运算符。这意味着在将 i 的值赋给其他变量或进行其他运算之前,它首先会将 i 的值增加 1。因此,在这个操作之后,任何依赖于 i 的值的地方都会使用新的、已经增加了 1 的值。
因此,如果你想在其他运算之前先增加 i 的值,你应该使用 ++i。如果你想在其他运算之后增加 i 的值,你应该使用 i++。
3. &与&&的区别
- 如果左边执行结果为true,&与&&会继续执行右边
- 如果左边执行结果为false,则&会继续执行右边
&&则不会继续执行
在开发中,推荐使用&&
4. | 与|| 的区别
- 如果左边执行结果为false,|与||会继续执行右边
- 如果左边执行结果为true,则|会继续执行右边
||则不会继续执行
在开发中,推荐使用||
5. 两数据交换
推荐第一种
6. 条件运算符
(条件表达式)? 表达式1:表达式2
数据类型看后面表达式的类型
7.运算优先级
开发建议:
- 不要过多的依赖运算的优先级来控制表达式的执行顺序,这样可读性太差,尽量使用()来控制表达式的执行顺序。
- 不要把一个表达式写得过于复杂,如果一个表达式过于复杂,则把它分成几步来完成。例如:
(num1 + num2) * 2 > num3 && num2 > num3 ? num3 : num1 + num2;
String运算
String运算时,如果前面两个为数字,会运算,如果后面加个String则后面跟着数字不会运算!
小tips
涉及金融时,一般使用BigDecimal类(不是float和double),数据库中浮点数使用的也是Decimal