一、常量
- 常量:在Java程序运行过程中其值不能发生改变的量
- 分类:
- 1、字面值常量:
- 整数常量 表示所有的整数,包括负数 10 -8
- 小数常量 表示所有的小数 1.23 -3.14
- 布尔常量 true false
- 空常量 null
- 字符常量 表示由单引号括起来的单个字符 'a' '刘'
- 2、自定义常量
- 常见的单位转换:
- 1byte = 8bit
- 1kb = 1024byte
- 1mb = 1024kb
- 1gb = 1024mb
- 1tb = 1024gb
- 1pb = 1024tb
- java针对整数常量,提供4种表现形式:
- 二进制:由0,1构成,逢2进1,由0b开头
- 八进制:由0,1,2,3,4,5,6,7构成,逢8进1,由0开头
- 十进制:由0,1,2,3,4,5,6,7,8,9构成,逢10进1,默认就是10进制
- 十六进制:由0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f构成,逢16进1,由0x开头
- 进制之间的转换
- 1、其他进制转10进制 规律:每一位上的系数乘上自身进制的幂次方之和
- 12345【10进制】 -> 【10进制】?12345
- 12345 = 10000 + 2000 + 300 +40 + 5
- = 1*10^4 + 2*10^3 + 3*10^2 + 4*10^1 + 5*10^0
- = 10000 + 2000 + 300 + 40 + 5
- = 12345
- 2、10进制转其它进制 规律:除基取余,直到商为0,余数反转
- 3、10进制与2进制之间的快速转换:8421码
- 1 1 1 1 1 1 1 1
- 128 64 32 16 8 4 2 1
-
- 10110011 -> 128 + 32 + 16 + 2 + 1
- 4、其他进制到其他进制 如:2进制到8进制
- 方案1、先转10进制,再转8进制
- 10011-> 16 + 2 + 1 = 19
- 19/8= 2...3
- 2/8 = 0...2
- 方案2:先转2进制,若转8进制,每3位一组合,转10进制拼接;若转16进制,每4位一组合,转10进制拼接
- 举例:10011【2进制】 -> 【8进制】023
- 010-> 2 011-> 3
- 10011【2进制】 -> 【16进制】0x13
- 0001-> 1 0011-> 3
- 举例:-7 + 3 = -4
- java针对2进制而言,负数和正数的表现形式不一样的,并且在计算机底层计算过程中,数据都是采用补码进行计算的
- 要想知道一个数值的补码,就必须先知道该数值的反码,要想知道一个数值的反码,就必须先知道该数值的原码。
- 原码:
- 正数的原码与二进制值保持一致,最高位为0;
- 负数的原码数值位与正数一致,最高位是1。
- 举例:
- 符号位 数值位
- -7的原码:1 0000111
- 3的原码: 0 0000011
- 反码:
- 正数的反码与原码保持一致;
- 负数的反码,再原码的基础上,符号位不变,数值位按位取反
- 举例:
- 符号位 数值位
- -7的反码:1 1111000
- 3的反码: 0 0000011
- 补码:
- 正数的补码与原码保持一致;
- 负数的补码,再反码的基础之上,末位+1
- 举例:
- 符号位 数值位
- -7的补码:1 1111001
- 3的补码: 0 0000011
- 11111001
- +
- 00000011
- --------------
- 补码: 11111100
- 最终计算机是最终原码转10进制之后的结果
- 符号位 数值位
- 补码: 1 1111100
- 反码: 1 1111011
- 原码: 1 0000100
- -------------------------
- -4
复制代码 二、变量、数据类型
三、赋值
- 赋值运算符:
- = += -= *= /= %=
- public class FuZhiDemo1 {
- public static void main(String[] args) {
- int a = 3;
- // a += 4;
- // System.out.println(a);
- a-=5;
- System.out.println(a);
- }
- }
复制代码 四、算数运算符
- 算数运算符:
- + - * / % ++ --
- java中,一个算数表达式最终的结果数据类型,是由参与运算最大的那个参数类型决定的
- ++: 自加1
- ++在后,先赋值再进行自加1;++在前,先自加1,再赋值参与运算
- --: 自减1
- --在后,先赋值再进行自减1;--在前,先自减1,再赋值参与运算
复制代码 五、关系运算符
- 关系运算符:
- > < >= <= == !=
- **关系表达式的结果一定是Boolean类型的**
复制代码 八、位运算符
- 逻辑运算符:
- & | ^ ! && ||
- **参与运算的参数类型都是Boolean,结果也是一个Boolean类型 **
- & : 有false则false
- |: 有true则true
- ^ : 相同则false,相反则true
- !: 将true变false,false变true
- &&: 左边为false时,右边表达式不会执行,结果为false
- ||: 左边为true时,右边表达式不会执行,结果为true
复制代码 免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |