算术运算符关系运算符逻辑运算符赋值运算符三元运算符标识符的命名规则和规范
标识符的规则标识符的规范 进制转换位运算
原码,反码,补码位运算符 相关面试题
大家好呀!我是小笙!前几天被培训班的老师考察基础,发现漏洞还是有很多的,我想进一步学习java基础,所以我跟着韩老师学Java,以下是我的笔记
运算符是一种特殊的符号,用来表示数据的运算,赋值或者比较等
算术运算符代码讲解
// / 使用 10 / 4; // 2 10.0 / 4 // 2.5 double d = 10 / 4; // 2.0 // % 使用 // 取模的本质 公式: a % b = a - a / b * b (当 a 是整数) a % b = a - (int)a / b * b (当 a 是浮点数,但是是近似值) 10 % 3 // 1 -10 % 3 // -1 10 % -3 // 1 -10 % -3 // -1 // 总结得出取模的正负取决于被模数关系运算符
关系运算符的结果都为boolean类型, true / false
关系运算符组成的表达式我们称为关系表达式
逻辑运算符用于连接多个条件(多个关系表达式),最终的值还是boolean类型
&& 短路与:如果某一个条件为false,则后面的条件不用判断,结果为false
& 逻辑与:全部条件都要执行
|| 短路或:如果某一个条件为true,则后面的条件不用判断,结果为true
| 逻辑或:全部条件都要执行
总结: && 和 || 优于 & 和 |
习题练习
赋值运算符将某个运算后的值赋给指定的变量
基本赋值运算符: =
复合赋值运算符: += -+ *= /= %=
三元运算符条件表达式 ?表达式1 : 表达式2
讲解:如果条件的表达式为 true ,运算后的结果表达式1,反之运行表达式2
优先级比较(补充概念:单目运算符:自加加 自减减 取反)
标识符的命名规则和规范笙式理解:规则即是法律,规范即是道德
概念:凡是需要自己命名的地方都是标识符(如:变量名,类名,方法名等等)
标识符的规则- 组成:由26个字母大小写,0-9,- 或 $ 组成,不可以以数字为开头命名,中间不能留有空格不可以使用关键字和保留字区分大小写,长度无限制
其他进制转换成十进制
规则:从最低位(右边)开始,将每个位上的数提取出来,乘以进制(其他进制的进制数)的(位数-1)次方,然后求和
举例:八进制转换成十进制
十进制转换成其他进制
规则:将该数不断除以进制(其他进制的进制数),直到商为0为止,然后将每步得到的余数倒过来,就是对应的进制数
举例: 十进制转换成二进制
位运算 原码,反码,补码 位运算符(&,|,^,~,>>,<<,>>>)
详解算术左右有移动
右移 高位补0,低位舍弃,若舍弃的位=0,则相当于除以2;若舍弃的位不等于0,则会丢失精度
左移 低位补0,高位舍弃,若舍弃的位=0,则相当于乘以2若舍弃的位不等于0,则会出现严重误差
负数反码移位:高位和低位都补1
负数的补码移位:右移->高位补1 ; 左移->低位补0
// 运用补码原码知识 System.out.println(2&6); // 2 System.out.println(~-2); // 1 System.out.println(-2>>3); // -1相关面试题
++ 运算符的算法题
int i = 10; i = i++; System.out.println(i); // 10 i = 10; i = ++i; System.out.println(i); // 11
编程题: 用最有效率的方法算出2 乘以8 等于几? 【基础】
答: 2 << 3
请你解释为什么会出现4.0-3.6=0.40000001这种现象?
原因简单来说是这样:2进制的小数无法精确的表达10进制小数,计算机在计算10进制小数的过程中要先转换为2进制进行计算,这个过程中出现了误差。
请你讲讲一个十进制的数在内存中是怎么存的?
补码的形式。



