Java的基础语法(常量)、进制的转换

一、Java的基础语法

1、常量:①整数常量 ②小数常量 ③字符常量 ④布尔常量 ⑤空常量

字符串常量(由双引号括起来的)

例:"helloworld","奥里给"

image

②整数常量

例:10,200,300

image

③小数常量

例:1.2,13.14

image

④字符常量(用单引号括起来的单个字符

例:'a','b','0'

image

⑤布尔常量

例:true,false

image

⑥空常量

例:null(后面学到面向对象的时候具体讲解)

二、进制(属于整数常量)

1、含义:是一种进位的方式,X进制,逢X进1

2、单位:国际化标准规定,用8个状态表示一个数据,这样数据的单位,称之为字节

3、像10110110表示某一数据,像这样由1和0组成表示的数据,称之为二进制表示法

4、1byte=8bit 1k=1024byte 1M=1024k 1G=1024M 1T=1024G

5、二进制表达数据的形式有点长,需要简化一下,因为用到八进制、十进制、十六进制

6、进制的数据组成

①二进制:由0,1组成,以0b开头

②八进制:由0,1,...,7组成,以0开头

③十进制:由0,1,...,9组成,整数默认是十进制

④十六进制:由0,1,...,9,a,b,c,d,e,f组成,以0x开头

image

三、进制转换

1、其他进制的数据转为十进制

​ 系数:待转换的每一位数值

​ 基数:待转换进制的单位(二进制的基数就是2,八进制的基数就是8)

​ 幂次:把待转换的数据从右往左开始编号,从0开始编(编号就代表幂次)

​ 转换:每一位上的系数×基数的幂次,然后相加得到是数值

​ 例1:将二进制的100转换为十进制为多少?

​ 100从右向左编号0,1,20,1,2就代表次幂

​ 即:100 = 1×2^2 + 0×2^1 + 0×2^0 = 4 + 0 + 0 =4

​ 例2:将八进制的100转换为十进制为多少?

​ 即:100 = 1×8^2 + 0×8^1 + 0×8^0 = 64 + 0 + 0 =64

​ 例3:将十六进制的100转换为十进制为多少?

​ 即:100 = 1×16^2 + 0×16^1 + 0×16^0 = 256 + 0 + 0 =256

2、将十进制的数转换为其他进制

​ 转换:除基取余,直到商为0,余数反转

​ 例1:将十进制的52转换为二进制为多少?

​ 52÷2=26 .......0

​ 26÷2=13 .......0

​ 13÷2=6 .......1

​ 6÷2=3 .......0

​ 3÷2=1 .......1

​ 1÷2=0 ......1

​ 即:余数反转,二进制为110100

​ 例2:将十进制的52转换为八进制为多少?

​ 52÷8=6 .......4

​ 4÷8=0 ......4

​ 即:余数反转,八进制为44

​ 例3:将十进制的52转换为十六进制为多少?

​ 52÷16=3 .......4

​ 3÷16=0 .......3

​ 即:余数反转,十六进制为34

3、十进制与二进制的快速转换方法(不需要通过计算):8421码

二进制: 1 1 1 1 1 1 1 1

十进制:128 64 32 16 8 4 2 1

​ 例1:二进制转成十进制:二进制的8位数里面,找出1固定位置代表的十进制数值相加

​ 10110110 = 128 + 32 + 16 + 4 + 2 = 182

​ 例2:十进制100转成二进制:

​ 100在128与64之间,128对应的1取不到,二进制第一位为0;

​ 100大于64,64对应的1可以取到,二进制第二位为1;

​ 100减去64等于36,36大于32,因此32对应的1可以取到,二进制第三位为1;

​ 36减去32等于4,4小于16,小于8,所以二进制的第四、五两位为0;

​ 余下的4刚好可以取到4对应的1,所以二进制第六为为1,第七、八为0.

​ 即:十进制100转成二进制为:01100100。

4、任意进制x转换成进制y的转换:

​ 方法1:以十进制为桥梁进行转换

​ 方法2:利用8421码,拆分组合进行转换

​ (1)方法1:进制x先通过系数×基数的幂次,然后相加,转换为十进制,然后再除基取余,直到商为0,余数 反转,得到进制y

​ (2)方法2:

​ 例1:将0b10110110转换为八进制(运用3位组合法

​ 从右往左3位数拆分,到最左边不够3位数,用0补齐,拆分结果为:010 110 110;

​ 选择8421码,第一个组合010在8421码中取2;第二个组合110取4和2,相加等于6;第三个组合取4

​ 和2,相加等于6,将三个组合得到的数值进行组合,所以该八进制为266

​ 例2:将0b10110110转换为十六进制(运用4位组合法),同理。

posted @ 2021-11-23 20:33  阿伟宝座  阅读(544)  评论(1)    收藏  举报