位运算符:
按位反运算符~:对数据二进制取反 如 ~00101010=1101010
按位与运算符&:参与运算的两个值,相应位都为1,则该位的结果位1,否则位0 如0010110 & 0110101=0010100
按位或运算符 | :参与运算的两个值,相应位都为0,则该位的结果为0,否则位1
按位异或运算符^:参与运算的两个值,相应位相同,则该位的结果为0,否则为1
左移运算符<<:将一个二进制位全部左移若干位,高位左移溢出后舍弃,低位补0(在没有溢出的情况下,左移相当于乘以2,比如左移2,就相当于数乘以2的2次方,所以乘以2可以用此方法) 如 a=00011100;a<<2=01110000
右移运算符>>:将一个二进制位全部右移若干位,舍弃移出的低位,移动后的最高位是空的,则看原来的最高位是1还是0,如果时1,则最高位填1(右移相当于除以2,除以2的倍数可以用此方法) 如 b=10011011;b>>2=11100110
无符号右移运算符>>>:将一个数的二进制位无符号右移若干位,舍弃移出的低位,而最高位补0
条件运算符 1 ?2 :3 是一个三目运算,如果1为真,则执行2,否则执行3,相当于if else 语句
类型转换:类型由低到高字节可以自动转换,信息不会丢失,而由高到低信息会丢失,在JAVA中所有的类型包括null所在的类型都可以转换成字符串的类型,
以下几种情况类型会发生转换:
1.表达式的结果类型和被赋值的变量的类型不一样时,结果的类型会自动转换为变量的类型
2.方法调用转换
3.强制类型转换:int a; double(a);
4.字符串转换:字符串+操作数,操作数会自动转换为字符串的类型
枚举类型:枚举类型的定义用enum ,定义了一个枚举类型就是定义了一个类,枚举类型可以定义构造一个函数,但函数的类型只能是private
异常处理:
异常,是异常类的对象,也是一种语言。每个异常类都代表了一种错误,类中包含了这中错误的信息和处理方法。当有一个错误发生时,就会有一个异常类与之对应,系统就会产生一个对应的异常类的对象(异常),一旦一个异常对象产生了,把他交给系统,系统就会有相应的机制来对应他,这样就确保了能够正常运行。把生成对象并提交对象的过程叫做抛出
错误:是致命性的,是系统遇到了不正常的状态,不能简单的恢复
异常:通过某种修复后还能恢复正常
异常的分类:
ArithmeticException: 在除法中除数为0
NullPointerException: 对象没有实例化
NegativeArraySizeException: 创建数组的时候,数组的元素为负数
ArrayIndexOutOfBoundsExceptionJava: 数组下标越界
ArrayStoreException: 程序试图存取数组中错误的数据类型
FileNotFoundException: 试图存取一个并不存在的文件
IOException: 通常的输入输出错误
异常的处理:
声明抛出异常:用throw句子将异常抛出调用方法,一个throw子句可以声明抛出多个异常
捕获异常:try,catch,finally语句,try,catch+要抛出的代码,finally+要执行的代码
PS:
1.取整的三种方法:
向上取整法: 只要有小数点整数都加1
向下取整法:直接去掉小数点
四舍五入法
2.命名的时候可以将数据类型写在前面,见名知类型