嘉明的Java学习(5)
Java核心 运算符
内容:
(1)算术运算符
(2)字符和字符串参与运算
(3)赋值运算符
(4)关系运算符
(5)逻辑运算符
(6)三元运算符
(1)算术运算符
算术运算符 |
---|
+ 加 |
- 减 |
/ 除 |
* 乘 |
% 取余数 |
++ 自增1 |
(减减)-- 自减1 |
运行大致是这样,
tips:在一些语句中,++a与a++是不同的,a++是先用了a的值再加一 ,++a是先让a的值加1再。
(2)字符和字符串参与运算
在编程中,有一个叫做ASCⅡ码表,其中每一个字符都代表一个数字
Hex表示16进制
Dec表示10进制
以下是字符与字符串的运算演示
字符的运算:
注:1.如果是无运算,单个输出,就是输出一个字符
2.如果是进行相加(进行运算),则根据ASCⅡ表进行换算,字符a在表中的数字是97,因此结果为103
字符串的运算注:1.String是定义字符串的函数,char是字符不要搞错,我当时就做错了qwq,不过俺Alt+shift+Enter可以自动修正喔,如下图
2.如果是两个字符串相加,则两个字符串的内容会合并,所以c + d结果为HelloWorldHi
3.如果对字符串进行运算,则会按照左到右的顺序,与字符串与数字进行合并,所以10 + c的结果为10HelloWorld
4.按照左到右的原则,10与20先相加再与字符串合并,12 + 8 + c答案为:20HelloWorld
5.注意这里的答案不是HelloWorld30,因为按照左到右顺序HelloWorld先与20结合形成新的字符串,再与10相加再得到新的字符串,所以c + 20 + 10 的答案为:HelloWorld2010
(3)赋值运算符
常见赋值运算符 | 拓展赋值运算符 |
---|---|
= (等于号) | +=、-=、/=、*=、%= |
注意:==(相等,关系运算符),=(赋值),这两个不要搞混,前者是判断作用,后者是赋值作用
关于拓展运算符是什么
比如:
a=2,b=3
a+=b,的意思就是 a+b=?,结果是一个数字,值为5。
其他运算符意思大致相同。
拓展运算符还有数类型转换的作用
这样是错的,因为1是一个默认的int类型值,范围来说int>short,所以 s + 1 是一个也是一个int的类型值,因此这样算是不通过的。
因为s+=1等同于s=(short)(s + 1),其隐含了自强制转换的作用,下面是结果
注意我上面的表达式("s " = s)是错的(C语言后遗症qwq),因为这是字符串的运算,不可以这样写,图二("s = " + s)才是正确的
(4)关系运算符
关系运算符 |
---|
==(等于)、!=(不等于)、>(大于)、>=(大于等于)、<(小于)、<=(小于等于) |
注:关系运算符的结果都是布尔(boolean)类型,只有true与false
结果大致如此
(5).逻辑运算符
逻辑运算符 |
---|
&&(并且,一个条件不满足都不可以)、!(非,表示否定)、 |
||(或者,其中一个条件满足就可以了)
结果大致是这样的
(6).三元运算符
三元运算符格式:(关系表达式)?表达式1:表达式2
如果表达式正确则执行表达式1,不成了则执行表达式2
结果大致如上
总结:以上算法都是很基本的东西,需要多用多记,以到达熟练的操作步骤