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

关键字:是个单词,就是在java里被赋予了特定的含义,组成必须全部小写。

标识符:就是给类、接口、方法、变量起名字用的字符序列(起名字的一个标记),组成必须是英文大小写、数字字符$和_。区分大小写,不能以数字开头,不能是关键字。

常见的命名规则:要见名知意。

包:全部小写。

类和接口:一个单词:单词的首字母大写,Dog,Student。

                 多个单词:每个单词的首字母大写,例如:HelloWorld。

方法或者变量:一个单词:首字母小写

                      多个单词:从第一个单词开始,首字母大写

常量:一个单词:全部大写,例如:PI

         多个单词:每个字母都大写,用_隔开,例如:STUDENT_MAX。

在程序的执行过程中其值不可以发生改变。

常量分类:字面值常量和自定义常量。


字面值常量:

1.字符串常量:用双引号括号括号起来的内容。

2.整数常量:所有整数,例如:12,23。

3.小数常量:所有小数,例如:12.34,45.78。

4.字符常量:用单引号括起来的内容,例如:‘a’,‘b’,'A','o'。

5.布尔常量:这个比较特殊,只有ture和false。

6.空常量:null。


java针对整数常量提供了4中表现形式。

二进制、八进制、十进制、十六进制

进制:就是进位制,是人们规定的一种进位方法。对任何一种进位制 x进制,二进制逢二进一,八进制逢八进一,十进制逢十进一,十六进制逢十六进一。


这个进制是什么东西呢?

计算机最开始的原始状态就是开和关。表达数据也就是用开和关表示的。

如果表达数据仅仅用这两种状态表示的话,那么表达的数据是比较少的,而我们常见的数据:英文字母,数字,标点符号,这就很多了,为了表示数据,国际上组织标准的规定用8个信号来表示一个数据,这个数据的单位叫:字节。

后来我们就通过数字1和0分别表示开和关。


由这样的1,0组成的数据就是二进制数据。

1byte = 8bit

1K = 1024byte

1M = 1024KB

1G = 1024MB    

1T = 1024GB

但是呢,用二进制表达数据的变现形式有点长,所以呢,我么你就要想简化一下。

如何简化呢?

把二进制的数据,从右开始,每三位一组合,最左边不够的时候,补0.然后,分别计算出对应的十进制数据,最后,再把每个十进制的数据组合起来,就是一个八进制数据。

上面的二进制:1 0     1 1 0     1 1 0,在最前面补上一个0。



这种变现形式还不是最简单的,我们还有更简单的。把二进制的数据,从右边开始,每四位一组合,最左边不够的时候,补0.然后,分别计算出相对应的十进制数据,最后,再把每个十进制的数据组合起来,就是一个十六进制数据。


规则:所以进制越大,表现形式越短。二进制是8个,八进制的时候是3个,十六进制的时候是2个。

再来看看不同进制数据组成

二进制:由0和1组成。以0b开头,有时候b在后面也是二进制。

八进制:由0,1,2,3,4,5,6,7组成。以0开头。

十进制:由0,1,2,3,4,5,6,7,8,9组成。整数默认是十进制的。

十六进制:由0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f(大小均可)组成。以0x组成,这里有点要说明一下,a=10,b=11,c=12,d=13,e=14,f=15。

我们最常用的到的就是二进制到十进制互相转换,在这里我有一个秘诀能让你快速记住:“其他进制”转“十进制”用乘。“十进制”转“其他进制”用除。



“其他进制”转“十进制”用乘:每一个位上的系数*基数的权次幂相加。通俗的说就是:数值本身*进制的幂(右边开始数的编号)再相加得出的数。

系数:每一位上的数值本身就是系数。

基数:x进制的基数就是x。

权:我们针对每一个位上的数据进行编号,从右边,并且是从0开始编号,这个编号就是该位上数据的权值。


例如:      二进制:100  转    十进制

100   =     1*2^2 + 0*2^1 + 0*2^0

        =4+0+0

        =4

十进制:4

100从右边开始数给序号,0,1,2。1乘以2的二次方 加上 0乘以2的一次方 加上 0乘以0的零次方,最后等于相加等于4。


八进制:100                            十进制:64

100 = 1*8^2 + 0*8^1 + 0*8^0

      =64 + 0 + 0

      =64


十六进制:100                           十进制:256

100 = 1*16^2 + 0*16^1 + 0*16^0

      =256 

我们在来点复杂一些的进制转换,算出下面数据的十进制。

0b10101

0123

0x3c

0b10101这是一个二进制,简化以后就是10101,从右边开始数0,1,2,3,4。

10101=1*2^4 + 0*2^3 + 1*2^2 + 0*2^1 + 1*2^0

         =16+0+4+0+1

         =21


0123这是一个八进制,简化以后就是123,从右边开始数0,1,2。

123=1*8^2+2*8^1+3*8^0

     =64 + 16 + 3

     =83


0x开头表示这是一个十六进制,简化以后就是3c,记住这里的c=12,从右边开始数0,1

3c=3*16^1  +  12*16^0

   =48 + 12

    =60

       

“十进制”转“其他进制”用除:整个数 除以 进制得出的余数,直到商为0,再从下往上数得出其他进制。

举个例子:     十进制:12345                转                  十进制:12345



十进制:20                                         二进制:10100


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值