Java基础小细节-二进制及运算
其他
2019-05-14 01:19:35
阅读次数: 0
基础
- 1.小数默认是double类型,如果10.1要给float,float f = 10.1f;
long常量 赋值 long l = 10L;(l/L,f/F大小写均可)
- 2.汉字也算一个char字符,char ch = ‘中’;
- 3.二进制 0b|B开头,八进制0开头,十六进制0x|X开头
- 4.正数的原码补码反码一模一样
- 5.负数反码 对原码除符号位外,逐位取反
- 6.负数补码 对原码逐位取反末位加一
计算机基础
- 1.计算机运算是用补码运算
- 2.基本数据类型4类八种
整数型 byte short int long
浮点型 float 4个字节 double 8个字节
字符型 char 2个字节 0~65535
布尔型 boolean 值只有true 和 false
- 3.字节是内存分配的最小单位
- 4.float和double的二进制运算不一样 所以不能直接赋
- 5.float 一共32位 1最高位 8位 23尾数位(小数)
- 6.double 一共64位 1最高位 后边和float不一样
- 7.常量优化机制:int截半截赋给short 看看在不在short范围内(变量没有优化机制,参见第10条)
- 8.byte char short 参与运算时 会自动提升自己的类型为int 然后再参与运算
- 9.小类型 和 大类型 参与运算,类型自动提升为大类型
- 10.变量赋值的时候,需要类型匹配【等号两边类型一致 或 等号左侧类型更大】
- 11.只要有变量参与运算 就没有优化
- 12.直接用 整形常量赋值时,一定要注意是否超出 类型取值范围
- 13.局部变量 使用前 一定要初始化赋值
- 14.字符串 + 其他类型数据 结果 还是字符串
计算机运算
- 1.“%”求余运算的结果 符号 只和左操作数符号有关
- 2.“%”求余运算的结果 数值 左右两边的绝对值的运算
- 3.左值 = 右值
左值:对应的内存空间/右值:空间中的值
- 4.“==”比较的是右值
- 5.“&&” 逻辑短路 前面是假的后面就不执行
- 6.“&” 前后都会执行
- 7.“||”和“|”同理
- 8.右移时,最高位补 符号位的值
- 9.手算出来的负数是原码,需要转换成补码给计算机存储
- 10.同一个数 ^ 另一个数两次 ,得到的结果 是自己
关于switch
- 2.switch里面可以放byte char short int
- 3.switch里面的数据类型 要和 case后面的数据类型一致
转载自blog.csdn.net/qq_41079359/article/details/90058260