java之运算符、表达式和语句
一、运算符
1.1、赋值运算符(“=”)——太简单不深入了
但是还是提醒一下,左边必须是变量!!!避免0=1;的低级错误!!!
1.2、一元运算符
+/- ------正(负)号
! ------ NOT,非
~ ------代表取补码
++ ------ 自增运算符
-- ------ 自减运算符
🌂下面补充下补码的知识(百度查的,能看懂)
在计算机系统中,数值一律用补码来表示(存储)。
主要原因:使用补码,可以将符号位和其它位统一处理;同时,减法也可按加法来处理。另外,两个用补码表示的数相加时,如果最高位(符号位)有进位,则进位被舍弃。
其中,正数的补码是它本身,而负整数的补码,将其原码除符号位外的所有位取反(0变1,1变0,符号位为1不变)后加1;
例如:求-5的补码。
-5对应正数5(00000101)→所有位取反(11111010)→加1(11111011)
所以-5的补码是11111011。
1.3 算数运算符不多说(+、-、*、/、%),还是太简单了!!!
1.4 逻辑运算符(只对布尔类型进行操作并返回布尔类型数据)
&&/& —— 与
|| / | —— 或
! —— 非
Java中&&和&都是表示与的逻辑运算符,都表示逻辑运输符and,当两边的表达式都为true的时候,整个运算结果才为true,否则为false。
&&的短路功能,当第一个表达式的值为false的时候,则不再计算第二个表达式;&则两个表达式都执行。
&可以用作位运算符,当&两边的表达式不是Boolean类型的时候,&表示按位操作。
还是举一个例子
1 | boolean b1 = 1<0 && 1/0==0; |
二、表达式
不想多说,C语言里面接触多了,就总结一点点
2.1 算术表达式
a+=b; //a = a + b;
a-=b++; //a = a - b b = b + 1;
但有一说一没必要像这样 早晚把人绕死!!!
2.2 关系表达式(不讲!!!)
2.3 逻辑表达式 (不讲!!!)
2.4 赋值表达式 (“=”不多说)
2.5 表达式的类型转换
原则:
(1)占用字节较少的数据类型转换成字节数较多的数据类型;
(2)字符类型会转换成int类型;
(3)int类型会转换成float类型;
(4)若表达式中其中一个类型为double,另一个操作数也会转double;
(5)布尔类型不能转换为其它类型;
1 | public static void main(String[] args) { |
三、总结
3.1 &和&&以及||和|的关系(上面已经提过了 可以往上翻找找看)
3.2 递增递减运算符
++1 1++ –1 1–;
3.3 位运算
小技巧:任何数与0000 0001进行或运算后,第一位将变成1;
任何数与1111 1110进行与运算后,第一位将变成0;
然后看到一些题目:(就敲出来给大家看看)
①一个三目运算符的简单操作
//一个三目运算符的简单操作
1 | public class ex { |
②生成一个随机字母
1 | public static void main(String[] args) { |
③随机生成一个小写字母并转换为大写
1 | public static void main(String[] args) { |