大厂面试真题3-Java基础问题

陆佃

关注

阅读 60

2022-03-24

0、Java源码的编译过程?(华为)

源代码-> 词法分析器 -> 语法分析器 -> 语义分析器 -> 字节码生成器

0.1、jvm的作用?

保证Java一次编译到处运行,屏蔽了机器底层机器码。保证Java不面向任何的处理器而只是面向于虚拟机。

0.2、Java如何跳出多重循环?(华为)

        String a1 = "";
        String b1 = "";
        here:
        for (int i = 1; i <= 4; i++) {
            a1 = "外层循环第"+i+"层";
            for (int j = 1; j <= 4; j++) {
                b1 = "内层循环第"+j+"层";
                if (2 == j & 2 == i) {
                    break here;
                }
            }
        }

1、Hash为什么要右移16位异或?(美团)(滴滴)

static final int hash(Object key) {
        int h;
        return (key == null) ? 0 : (h = key.hashCode()) ^ (h >>> 16);
 }

首先这个方法的返回值还是一个哈希值。为什么不直接返回ke

精彩评论(0)

0 0 举报