-
运算符优先级(i++)
public static void main(String[] args){
int i=0;
i=i++ + ++i; //i=2;
int j=0;
j=++j + j++ + j++ + j++; //j=7;
int k=0;
k=k++ + k++ + k++ + ++k; //k=7;
System.out.println("i="+i);
System.out.println("j="+j);
System.out.println("k="+k);
}
分析:先执行i++,但是i自增1操作是稍后才执行,所以此时i的值还是0,然后执行++i,++i后i的值是1,执行完++i后要补增i++,所以此时i的值才为2,0+2=2所以i的值为2
public static void main(String[] args){
int i=0;
for(int i=0;i<100;i++){
j=j++;
}
System.out.println(j);
}
分析:输出结果为0。java用了中间缓存变量的机制,所以j=j++可换成如下写法:
temp=j;
j=j+1;
j=temp;
-
英文介绍自己经常访问的技术网站,你是怎么使用和自己的收获。
-
error和Exception区别
Error和Exception都继承自Throwable;
error 表示系统级的错误和程序不必处理的异常,是恢复不是不可能但很困难的情况下的一种严重问题;比如内存溢出,不可能指望程序能处理这样的情况; exception 表示需要捕捉或者需要程序进行处理的异常,是一种设计或实现问题;也就是说,它表示如果程序运行正常,从不会发生的情况。
Error的继承关系:
Exception的继承关系:
Java 中异常类的继承关系图:
参考:
-
九九乘法表。
class Jiujiu
{
public static void main(String[] args)
{
for(int i=1;i<=9;i++)
{
for(int j=1;j<=i;j++)
{
System.out.print(i+"*"+j+"="+i*j+" ");
}
System.out.println();
}
}
}
- 毕达哥拉斯三元组求解。