- 浏览: 9517 次
- 性别:
- 来自: 大连
最新评论
文章列表
System.out.println(1.0/0); 会抛异常吗?
两个不同类型的数作运算,以取值范围大的类型为标准,
且在Java中,浮点数有无限值和NaN的概念,
所以上述表达式不会抛出ArithmeticException异常,
而是输出Infinity。
jdk 官网对Condition的描述:
Condition 将 Object 监视器方法(wait、notify 和 notifyAll)分解成截然不同的对象,以便通过将这些对象与任意 Lock 实现组合使用,为每个对象提供多个等待 set (wait-set)。其中,Lock 替代了 synchronized 方法和语句的使用,Condition 替代了 Object 监视器方法的使用。
下面通过网上一道面试题看看Condition的应用:
启动三个线程,顺序打印ABC十次
import java.util.concurrent.ExecutorService; ...
删除文件命令rm [m-n] 用法:
如果若干文件的文件名中有某一值有序排列,可以通过指定这个值的范围(m-n)来删除这些文件。
如:目录下有001.txt, 002.txt, 003.txt ,004.txt 005.txt.
此时,通过命令rm *[1-3].txt就可以删除文件001.txt, 002.txt, 003.txt。
004.txt 005.txt. 则被留下。
import java.util.Date;
public class MyThread implements Runnable {
int b = 100;
public synchronized void m1() throws Exception {
b = 1000;
Thread.sleep(5000);
System.out.println("b = " + b);
// Thread.sleep(2000);
}
public sy ...
1,hashcode默认是根据对象的内存地止算出的。
2,什么时候重写hashcode?
当使用哈希集合时,如果复写了对象的equals方法,此时必须复写对象的hashcode方法。
以HashSet为例:在向哈希集合中添加对象时,对象的hashcode先被调用。如果两个对象的hashcode不一样hashset则认为他们是不同的两个对象。
当只复写equals方法时,在下面的程序中s1,s2被看作两个不同的对象加入set中。但在现实业务中我们往往希望s1,s2是同一对像。
...