现在的位置: 首页 > 综合 > 正文

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

2018年05月06日 ⁄ 综合 ⁄ 共 2543字 ⁄ 字号 评论关闭

 

           ----------- 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学习型技术博客、期待与您交流! ------------

抱歉!评论已关闭.