关于运算符
关于运算符
一.算数运算符
一.赋值符号
赋值符号:”=“
关键知识点:先看右侧,再看左侧,把右侧的值赋值给左侧的变量。
二.算数运算符
1.基本定义
包括加(+),减(-),乘(x),除(/),取余(%)。
用自己计算,先算右侧结果,再赋值给左侧变量。
连续运算,先算右侧的结果,再赋值给左侧变量。
初始化时就运算,先算右侧结果,再赋值给左侧变量。
2.优先级
优先级是指在混合运算时的运算顺序
乘除取余优先级高于加减
括号可以改变优先级,优先计算括号内的内容
多组括号先算最里面的括号,依次往外算。
3.算数运算符的复合运算符
固定写法 运算符+=
+= -= *= /= %=
复合运算符是用于自己=自己运算的
4.算数运算符的自增减
a++ 先用再加
++a 先加再用
二.字符串拼接
一.字符串拼接方式1
在之前的算数运算符中,只是用数值类型变量进行数学运算的。
而string类型不存在算数运算符,因此无法计算,但是可以通过+号来进行字符串拼接。(有且仅有加号)
1 |
|
二.字符串拼接方式2(很好用!!!!!)
1.固定语法
string.Format(“待拼接的内容”,内容1,内容2,。。。。。);
2.拼接内容中的固定规则
想要被拼接的内容用占位符替代{数字} 数字:0~n,依次往后。
1 |
|
三.控制台打印
1 |
|
Ps:占位符没有从0开始写也会报错,内容比占位符少也会报错。
三.条件运算符
一.条件运算符的基本应用
用于比较两个变量或者常量。像是>,<,==,!=,>=,<=之类。
条件运算符一定存在左右两边的内容,左边内容+条件运算符+右边内容。
注意:条件运算符不能直接使用,如果是纯比较不用结果的话,那么对于我们来说,没有任何的意义。
1 |
|
比较的结果是返回一个bool类型的值,true和false,如果满足条件,返回true,否则返回false。
二.各种应用写法
1 |
|
由上式子可知,条件运算符的优先级低于算数运算符。
要判断一个变量是否在两个数之间,要结合逻辑运算符的知识点
三.不同类型的比较
不同数值类型之间可以随意进行条件运算符的比较。
特殊类型char string bool 只能同类型进行==和!=比较。
(char可以和int类型等数值类型比较,此时char会转换成数值类型即ASCII码进行比较。)
四.逻辑运算符
对bool类型进行逻辑运算。
一.逻辑与
符号 && 并且
规则:对两个bool值进行逻辑运算,有假则假,同真为真。
1 |
|
二.逻辑或
符号 || 或者
规则:对两个bool值进行逻辑运算,有真则真,同假为假。
1 |
|
三.逻辑非
符号 ! 不是
规则 对一个bool值进行取反,真变假,假变真.
1 |
|
四.混合使用优先级问题
规则***:!(逻辑非)优先级最高,&&(逻辑与)优先级高于||(逻辑或).***
逻辑运算符优先级低于算数运算符和条件运算符.
1 |
|
五.逻辑运算符短路规则(容易被忽视,多看看)
1 |
|
五.位运算符
位运算符 主要用数值类型进行计算.
将数值转换位2进制,再进行位运算.
一.位与 &
规则:连接两个数值进行位运算,将数值转换为2进制
对位运算,有0则0.
1 |
|
多个数值进行位运算时,没有括号时,从左到右,依次计算
二.位或 |
规则:连接两个数值进行位运算,将数值转换为2进制
对位运算,有1则1.
1 |
|
三.异或 ^
规则:连接两个数值进行位运算,将数值转换为2进制
对位运算,相同为0,不同为1.
四.位取反 ~
规则:写在数值前面,将数值转为二进制
对位运算,0变成1,1变成0.
1 |
|
五.左移<<和右移>>
规则:让一个数的2进制数进行左移和右移.
左移几位,右侧加几个0
右移几位,右侧去掉几个0.
1 |
|
六.三目运算符
套路:3个空位,2个符号
固定语法:空位 ?空位:空位;
关键信息:bool类型?bool类型为真返回内容:bool类型为假返回内容。
三目运算符会有返回值,这个返回值必须一致,并且必须使用!
具体使用
1 |
|
综上所述:第一个空位,始终是结果为bool类型的表达式/bool变量/条件表达式/逻辑运算表达式。
第二三个空位:什么表达式都可以,只要保证它们的结果类型是一致的。