java、进制、数据类型与运算

 

           ----------- android培训java培训、java学习型技术博客、期待与您交流! ------------

一:进制
    进制就是一种计算方式,计算机中,用的是二进制。
      1).二进制表现形式:01
      2).八进制表现形式:01234567
      3).十六进制表现形式:0123456789ABCEF

    十进制转二进制(采用除2取余数的方式)
        实例:  整数9转成二进制
     8/2    余0
      4/2   余0
       2/2  余0
        1

    读取方式是由下往上的,所以9的二进制表现形式为"1000"
    计算机内存是以二进制体现出来的,如“0110101001010101010101010110111”

    二进制转十进制(采用2的乘方计算,只加1的位数),从左往右读
       实例:
010110

        相当于“2的1次方+2的2次方+2的2次方+2的4次方”=16

    二进制转八进制(3位表示一组,组合起来)
实例:
010 110
  2   6
相当于26

    二进制转十六进制(4位表示一组,位数不够的补齐,组合起来)
实例:
0001 0110
  2   6
相当于26
    十六进制转十进制(最好方法,先把16进制转换成2进制,再把2进制转换成10进制)

二:变量
   1)变量是在程序中,不断发生变化的数据。
   2)变量用来存储常量值,方便以后的运算。
   3)变量在同一个范围内不能重复定义,范围就是程序中的"{}";变量
    变量是在程序中,不断发生变化的数据
    变量用来存储常量值,方便以后的运算
    定义变量的三个要素,数据类型 变量名(标识符)  初始化值
     |-- 数据类型,就是变量可以存储的数据类型
     |-- 变量名,就表示了开辟内存空间的这个名字
     |-- 初始化值其实是一个常量
     |-- 整数默认的类型是int,小数默认的是double类型。

三:数据类型
   1)数值型
     |--整数
      |-- byte  short int long
       |--byte字节型,内存中占8个二进制位,一个八位 -128--127
                                            负的2的7次方到正的2的7次方-1
     
       |--short短整型,内存中占有16个二进制位,2个八位 -32768-32767
负的2的15次方到正的2的15次方-1

       |--int整型,内存中占有32个二进制位,4个八位 负的2的31次方到正的2的31次方-1
                    java中默认的整数类型就是int
     
       |--long长整型,内存中占有64个二进制位,8个八位
                      负的2的63次方到正的2的63次方-1

     |--浮点类型
      |-- float 单精度浮点类型,内存中是32个二进制位,4个八位
      |-- double 双精度浮点类型,内存中是64个二进制位,8个八位
   2)字符型
   3)布尔型 true false

   \实例1:
     byte b = 3;
      b = b + 4;
     System.out.println(b);//结果打印错误,原因是:第一行字节为byte类型,将3赋给b,第一二行4是int类型,
     byte类型3+int类型4是不能相加,所以编译时会打印"可能损失精度"。

   \实例2:
    byte s1 = 3,s2 = 4;
    byte s3 = s1 + s2;
    byte s4 = 3 + 4;
     System.out.println(s3);//编译失败,因为java虚拟机不能确定具体的数据类型
     System.out.println(s4);//结果为7 编译成功:因为3和4是一个常量,

四.算数运算符
   提供程序进行数学运算
    +  -  *  / %  ++  --

    |-- %取模运算的特点总结
         左边等于右边结果0;
  左边小于右边,结果是左边。
         余数是否是负数,取决于左边
    |--
      ++ -- 相当于变量自己增加1或者自己减去1
      ++写在变量前边,变量自己先增加1,在和其他数据运算
      ++写在变量后边,变量先参与和其他数据运算,自己在增加1
五.比较运算符
     比较运算符运算后的结果,只有两个值,true false

六. 逻辑运算符
     用于连接两个布尔类型表达式,也就是连接两个比较运算符,运算后的结果
     &:两边都为true,结果为true,一边为false,结果为false
     |:两边任意一边为true,结果为true,两边都是false 结果是false
     !: 真变假,假变真  !!!!!!!!!!true
     ^: 两边相同为false,不同为true
     &&:短路效果,提高程序效率,&&一边为false,另一边不在运算了
     ||:短路效果,提高程序效率,||一边为true,另一边不在运算
     \实例
        

/*需求:已知int a = 3,b = 4。改变位置 */
class A
public static void main(String[] args){
     int a = 4, b =3;
         a = a^b;
         b = a^b;
         a = a^b;
       System.out.println(a+","+b);
}

七. 位运算
    二进制位的运算
    << : 左移运算:移动位数越多,结果越大
         8<<1  8*2的一次方  8<<2 8*2的2次方
    >> : 右移运算:移动的位数越多,结果越小0
         8>>1  8/2的一次方
    >>>: 无论二进制最高位是0还是1 ,都将填补0

    ~: 负数的二进制是,整数取反+1

    ^ : 当一个数,异或一个数2次,结果还是原来这数

八. 三元运算符
    需要3个运算条件的,运算后是要有结果出现的
    (条件表达式)?表达式:表达式;

----------- android培训java培训、java学习型技术博客、期待与您交流! ------------

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值