扬中网站建设效果,宁波seo整体优化,北京网站建设工作室,新建文档怎么做网站运算符
一、分类
算术运算符关系运算符位运算符逻辑运算符赋值运算符其他运算符 1.1 算术运算符
操作符描述例子加法 - 相加运算符两侧的值A B 等于 30-减法 - 左操作数减去右操作数A – B 等于 -10*乘法 - 相乘操作符两侧的值A * B等于200/除法 - 左操作数除以右操作数B /…运算符
一、分类
算术运算符关系运算符位运算符逻辑运算符赋值运算符其他运算符 1.1 算术运算符
操作符描述例子加法 - 相加运算符两侧的值A B 等于 30-减法 - 左操作数减去右操作数A – B 等于 -10*乘法 - 相乘操作符两侧的值A * B等于200/除法 - 左操作数除以右操作数B / A等于2取余 - 左操作数除以右操作数的余数B%A等于0自增: 操作数的值增加1B 或 B 等于 21--自减: 操作数的值减少1B-- 或 --B 等于 19 1.1.1 自增与自减运算符
$ 1. 前缀 、后缀 自增自减法
int a9;int ba;//先让ba 再让aint ca;///先让 a,再让ca
$ 2. 自增自减--运算符
面试点
int c1;
cc;
System.out.println(c);
自身等于自身加加减减 是无效的 ---无效操作 1.2 关系运算符
运算符描述例子检查如果两个操作数的值是否相等如果相等则条件为真。A B为假。!检查如果两个操作数的值是否相等如果值不相等则条件为真。(A ! B) 为真。 检查左操作数的值是否大于右操作数的值如果是那么条件为真。A B为假。 检查左操作数的值是否小于右操作数的值如果是那么条件为真。A B为真。检查左操作数的值是否大于或等于右操作数的值如果是那么条件为真。A B为假。检查左操作数的值是否小于或等于右操作数的值如果是那么条件为真。A B为真。 1.3 位运算符 应用于整数类型(int)长整型(long)短整型(short)字符型(char)和字节型(byte)等类型。
操作符描述例子如果相对应位都是1则结果为1否则为0AB得到12即0000 1100|如果相对应位都是 0则结果为 0否则为 1A | B得到61即 0011 1101^如果相对应位值相同则结果为0否则为1A ^ B得到49即 0011 0001〜按位取反运算符翻转操作数的每一位即0变成11变成0。〜A得到-61即1100 0011 按位左移运算符。左操作数按位左移右操作数指定的位数。A 2得到240即 1111 0000 按位右移运算符。左操作数按位右移右操作数指定的位数。A 2得到15即 1111 按位右移补零操作符。左操作数的值按右操作数指定的位数右移移动得到的空位以零填充。A2得到15即0000 1111 CPU底层半导体电路集成的电路多
两个电压 相互作用 出一个电压
与或非 对应CPU里 半导体小电路。
与或非 揭示了CPU底层其实是半导体电路 位运算涉及一些算法和^
异或 两数交换
x----判定 x的 二进制 从右往左 第m位 是0还是1--- 与运算 ssssssssssssss未知
用与运算计算
s s s s s s s s s s s s s s
0 0 0 0 0 0 0 0 0 0 1 0 0 0
---------------------------------------
0 0 0 0 0 0 0 0 0 0 1 0 0 0
x 2^(m-1)2^m-1) ^ 两变量交换值不依赖第三个变量 x ^ s k
根据s和k能够反推出 x
0-11
0-00
1-10
异或知道其中两位时能够推理出第三位 1.4 逻辑运算符
操作符描述例子称为逻辑与运算符。当且仅当两个操作数都为真条件才为真。A B为假。| |称为逻辑或操作符。如果任何两个操作数任何一个为真条件为真。A | | B为真。称为逻辑非运算符。用来反转操作数的逻辑状态。如果条件为true则逻辑非运算符将得到false。A B为真。 1.5 赋值运算符
操作符描述例子简单的赋值运算符将右操作数的值赋给左侧操作数C A B将把A B得到的值赋给C 加和赋值操作符它把左操作数和右操作数相加赋值给左操作数C A等价于C C A- 减和赋值操作符它把左操作数和右操作数相减赋值给左操作数C - A等价于C C - A* 乘和赋值操作符它把左操作数和右操作数相乘赋值给左操作数C * A等价于C C * A/ 除和赋值操作符它把左操作数和右操作数相除赋值给左操作数C / AC 与 A 同类型时等价于 C C / A取模和赋值操作符它把左操作数和右操作数取模后赋值给左操作数C A等价于C CA 左移位赋值运算符C 2等价于C C 2 右移位赋值运算符C 2等价于C C 2按位与赋值运算符C 2等价于C C2^ 按位异或赋值操作符C ^ 2等价于C C ^ 2| 按位或赋值操作符C | 2等价于C C | 2
N进制左移M位都是相当于乘以N的M次方。 任何十进制都可以变成包含若干个1的二进制
110101110010000100000
有多少个1就能拆成多少个这些相加。
1.5.1 左移例子
eg:
a*m,m是万亿级别的数字。
万亿 10^12 10^3 * 10^3 * 10^3 * 10^3
万亿 级别的数字---二进制40位----最多40个1---- 加减乘除 底层 都是 位运算。
超范围计算会出现计算错误。比如正数左移变成了负数 1.5.2 右移
右移操作前面补的数看符号位。若符号位是1补1符号位是0补0. 1.6 三元运算符||分布运算符
variable x (expression) ? value if true : value if falseint cab?23:11; 前面是条件判断如果是等于23如果不是等于11 如果e(等于ab) 8e等于23.34 否则11.9.