进制转换,运算符

 

常量:

java中固定不变的值

整数常量,小数常量,字符常量,字符串常量,布尔常量null空常量

进制以及进制的转换:

概念:

进制是一种规定好的进位方法,对于任何一种进制,就表示再运算时逢X进一。例如二进制就是逢二进一,八进制就是逢八进一,十进制就是逢十进一,十六进制就是逢十六进一。

进制的表示方法:

                         二进制一般由0b开头,0~1;

                         八进制一般由0开头,0~7;

                         十进制整数的默认类型是十进制,0~9组成;

                         十六进制一般由0x表示,0~9,A,B,C,D,E,F;

进制的转换:

       十进制转换到其他进制:除基数(其他的进制)取余,直到商为0,余数采用倒叙的排列法。

其他进制转换到十进制:采用倒叙的排列,用系数*基础的权次幂即可。

任意进制之间的来回转换:可以借助十进制为桥梁进行转换。

十进制二进制之间的快速转换:

 

8421码是bcd代码中最常用的一种,如果将十进制转换为二进制,依次从左到右相加等于十进制的值,那么对应的二进制就写1,没有的则写0;

                                                         如果将二进制转换为十进制,依次从右到左找到对应十进制的值进行相加。

 

有符号位的数值表示法(扩展)

注意:计算机的运算都是按照补码进行的

原码:二进制的正常表示法,最高位“0”代表正数,“1”代表负数;

反码:正数的反码和原码一致,负数是对原码进行逐一取反,但符号位除外;

补码:正数的补码和原码一致,负数的补码是对反码的最后一位+1;

变量:

变量的三要素:   数据类型   变量名称 = 初始化值;

基本数据类型:(四类八种)

                       整数:                    

byte字节类型1个字节范围-128-127
short短整型2个字节 
int整数默认类型4个字节 
long长整型8个字节(定义long类型时,需要在初始化变量末尾加上L)

 

                       小数: 

float单精度4个字节定义float类型时,需要再初始化变量末尾加上F
double双精度8个字节 

 

                               字符: 

                                               char    2个字节      书写时需要用''引起来

 

                               布尔类型:

                                              boolean   1个字节    不参与运算 只有true/false

 

 

                            类型自动提升规则:所有的byte,short,char型的值将被提升为int型(在参与运算时)

 

运算符:

概念:

对常量和变量操作运算的符号称为运算符

 

算数运算符

+  , -  ,*  ,/  ,% ,++  ,--

赋值运算符

+= ,-= ,/= ,%=, =

逻辑运算符

&(与) , | (或), ^ (异或), !(非) , &&(与短路) , ||(或短路)

三目运算符

布尔表达式 ? 结果1  : 结果2

关系运算符

> , < ,<= ,  >= , == , !=

位运算符

>>(右移),<<(左移),>>>(无符号右移),&(与运算) , |(或运算), ^(异或运算),~(非)

算数运算符:

++或者--在数值前,表示先自增,在运算

++或者--在数值后,表示先运算,在自增

 

赋值运算符:

把等号左边的值和右边的值运算后在赋值给等号左边。

short s = 1;

s += 1 ;

等价于:short s = (short)1 + 1 ;(不受默认是int类型的影响)

 

逻辑运算符:

实际编码当中一般使用&&,||,和 !;

 

&和&&的区别:

                       &   无论&左边的值是true或者false时,&右边的值都会进行运算,反之。

                       &&  当&&左边的值为false时,&&右边的值不会进行运算。

|和||的区别:

                       |   无论|左边的值时true或者false时,|右边的值都会进行运算。

                       ||   当||左边的值为true时,||右边的值不会进行运算,反之。

^     当^左边为true,右边为flase时。结果为true。

 

位运算符:

>>   右移         

                         格式:值 >> 位移的次数           

                         右移  :右移的时候,如果最高符号位为0,左边补齐0;最高符号位如果为1,左边补1,右边多的比特位丢弃掉!

                         右移一位相当于除2,右移n位相当于除以2的n次方。

 

 

<<   左移         

                       格式:值 << 位移的次数   

                       左移  :计算出来这个数据补码---左移动,右边补齐0,最高符号位丢弃掉          

                       在数字没有溢出的前提下,对于正数和负数,左移一位都相当于乘以2的1次方,左移n位就相当于乘以2的n次方。

 

 

& 与运算          两个进制操作数对应位同为1,结果为1,否则为0

|  或运算           两个进制操作数对应位只要有一个为1,结果为1。其余则为0

^异或运算         两个进制操作数对应位相同,结果为1,不同为0(一个操作数被另一个操作数异或两次,得到的值时它本身)

~取非                将每位数进行取反。

注意:机器的运算是按照补码进行的

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值