谁是代码界3%的王者?

谁是代码界3%的王者?_第1张图片


在Java代码界
有些陷阱外表看起来是个青铜
实际上是王者
据说97%工程师会被“秒杀”
不信?
阿里妹这有五道“基础题”
堪称5个温柔的陷阱
似是而非,雾里看花
考验真功夫的时候到了!


 
   
public class FloatPrimitiveTest {	
    public static void main(String[] args) {	
        float a = 1.0f - 0.9f;	
        float b = 0.9f - 0.8f;	
        if (a == b) {	
            System.out.println("true");	
        } else {	
            System.out.println("false");	
        }	
    }	
}
01 这段代码输出的结果是:

A: true
B: false
C: 由硬件指令决定


 
   
public class FloatWrapperTest {	
    public static void main(String[] args) {	
        Float a = Float.valueOf(1.0f - 0.9f);	
        Float b = Float.valueOf(0.9f - 0.8f);	
        if (a.equals(b)) {	
            System.out.println("true");	
        } else {	
            System.out.println("false");	
        }	
    }	
}
02 这段代码输出的结果是:

A: true
B: false
C: 编译出错


 
   
public class SwitchTest {	
    public static void main(String[] args) {	
        String param = null;	
        switch (param) {	
            case "null":	
                System.out.println("null");	
                break;	
            default:	
                System.out.println("default");	
        }	
    }	
}
03 下列哪种说法是正确的:

A: null
B: 抛出异常
C: default


 
   
public class BigDecimalTest {	
    public static void main(String[] args) {	
        BigDecimal a = new BigDecimal(0.1);	
        System.out.println(a);	
        BigDecimal b = new BigDecimal("0.1");	
        System.out.println(b);	
    }	
}
04 下列哪种说法是正确的:

A: 两种赋值的方式是一样的
B: 推荐a的赋值方式
C: 推荐b的赋值方式


 
   
public class LockTest {	
    private final static Lock lock = new ReentrantLock();	
	
    public static void main(String[] args) {	
        try {	
            lock.tryLock();	
        } catch (Exception e) {	
            e.printStackTrace();	
        } finally {	
            lock.unlock();	
        }	
    }	
}
05 下列哪种说法是错误的:

Alock是非公平锁
B: finally代码块不会抛出异常
C: tryLock获取锁失败则直接往下执行


想好了吗?把答案填在下面的答题区里哦:



偷偷告诉你一个小秘密:上面的5道题源于业界经典事实故障,经过广大开发者深度讨论提炼而成。类似问题及背后的解决思路,将在本周三发布的《Java开发手册》华山版中首次披露!阿里技术独家首发,敬请期待!


640?wx_fmt=jpeg

关注「阿里技术」

把握前沿技术脉搏

你可能感兴趣的:(谁是代码界3%的王者?)