Java日志——2016年5月30日

Posted on 2016-05-30 21:55  artzok  阅读(132)  评论(0编辑  收藏  举报

1. 局部变量必须初始化,可以定义的同时初始化,也可以定义完成之后进行初始化。

2. Java7新特性:数字之间可以使用“_”连接,eg:23_44_5 = 23445,0B1101_1010 = 0B11011010

3. 二进制表示0b开始;八进制以0开始;十六进制以0x开始。

4. char类型可以直接赋值十进制、二进制、八进制或十六进制的字面量,编译器自动将字面量转化为char类型。

5. char类型也可以使用四位十六进制表示Unicode字符,格式为char c = ‘\uffff’;

6. 算数运算的特殊规则:

       1)整数 / 0:抛出ArithmeticException违例   

       2)0.0 / 0.0 或 0 / 0.0 : NaN不是数,NaN不等于NaN

                 3)整数 / 0.0 或 浮点数 / 0.0  或 浮点数/0:等于Infinity,表示无穷大,Infinity == Infinity

6. 类型转化:

            1)字面量包含十进制二进制和十六进制。

            2)字面整型常量自动解析为int类型,浮点型字面量自动解析为double类型,如果字面整型常量大于int的表示范围,编译器将会解析错误,需要加上L转化为long类型。

           3)数值类型的自动转换顺序是由小精度(取值范围)到大精度的过程:byte  -> short  -> int –> long –> float –> double。

           4) 在运算表达式中,所有char、short、byte都会自动转化为int类型,表达式的最终类型等于当前运算中精度最高的那个数据的类型。 

           5) 编译期间,编译器会计算所有常量运算。

            6)为char、byte、short赋予字面量时,只要不超过取值范围,编译器会自动转化类型,不需要手动强制转化。

           7)+=、-=、/=等运算带有隐式类型转化,eg:short a = 2; a += 2; //正确,不会报错,也不需要手动强制转化

7.逻辑运算符(操作数位boolean类型)

            &         位与,不短路

            |          位或,不短路

            ^        位异或

            !       取反

            &&      与,短路

            ||         或,短路

8)位运算

             &            按位与

            |              按位或

            ^             按位异或

            ~             按位取反

           <<            左移,空位补0

          >>            右移,空位补符号位

         >>>           无符号右移,空位补0

        用法:a ^ b ^ b = a

                     a  & (a - 1) == 0表明a的二进制只有一位是1,即a等于2的n次方,n大于等于0

Copyright © 2024 artzok
Powered by .NET 9.0 on Kubernetes