1、 异常
异常分为运行时异常和编译时异常。
运行时异常:如上图
编译时异常:……
注意:当程序发生异常的时候,程序将不会继续执行。
当程序出现异常时要处理异常:
Try { 放的是可能会发生异常的代码 }catch( **异常 ) { 打印异常信息 }
如下图:
2、运算符
1)Java中取余求模,可以是对小数/负数求余数
2)注意:
int a = 10;
a = a++;
System.out.println(a);
C语言中a = 11;而java中a = 10;
3、JAVA的反汇编 javap -c Test
4、&&:表达式1&&表达式2,两边一定要是boolean类型,例如不能是 1&&a<b;
! : 逻辑非 !表达式,表达式必须是boolean类型,只能对ture或false取非;
a > b ? a : b, 表达式必须是boolean类型,
&& 和 || 遵守短路求值的规则, c语言中,&(按位与)|(按位或),而在java中,若两边表达式都是boolean,则仍然表达的是 逻辑与或者逻辑或,但没有短路特性。
四个位运算符:& ,| ,^ ,~
5、移位运算符:
“ >>“ : 右移 补符号位 (负数补码存储)负数右移补的是符号位
“<< ”: 左移 补0
” >>>” : 无符号右移 不管符号位是1还是0,统统补0
n迅速扩大几倍:左移x位相当于乘法,相当于n*2^x
右移x位相当于除法;
位运算比普通的乘除要要快一点点
6、
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int a = scan.nextInt();
System.out.println(a);
String str = scan.nextLine();
System.out.println(str);
//注意,二者一般不在一起使用
//因为nextLine()会把上面println的回车读入。
//应该用next();
String str1 = scan.next();
System.out.println(str);
}
而nextLine()和next()的区别就在于next()遇到空格就会结束,但是nextLine()不会。