why哥被阿里一道基础面试题给干懵了,一气之下写出万字长文。 (6)

why哥被阿里一道基础面试题给干懵了,一气之下写出万字长文。 (6)

就看第一句我圈起来的话。后面的描述都是围绕着这句话在展开描述。Java 虚拟机的 tableswitch 和 lookupswitch 指令,只支持 int 类型。好,那我现在来问你:switch 语句的表达式可以是哪些类型的值?注意我说的是表达式。这个答案在《Java 语言规范》里面也写着的:你看...

why哥被阿里一道基础面试题给干懵了,一气之下写出万字长文。 (5)

why哥被阿里一道基础面试题给干懵了,一气之下写出万字长文。 (5)

怎么定义稀疏所以,在 switch 里面,我们怎么定义稀疏呢?文档中没有写。文档里没有写的,都在源码里面。于是我搞了个 openJDK,我倒要看看源码里面到底什么是 TMD 稀疏。经过一番探索,找到了这个方法:com.sun.tools.javac.jvm.Gen#visitSwitch这里我不做源...

Java面试疑难点解析 - 面试技巧及语言基础

61 课时 |
3491 人已学 |
免费

Java面试疑难点解析 - Java Web开发

36 课时 |
662 人已学 |
免费

Java面试疑难点解析 - 系统架构及项目设计

25 课时 |
1394 人已学 |
免费
开发者课程背景图
why哥被阿里一道基础面试题给干懵了,一气之下写出万字长文。 (4)

why哥被阿里一道基础面试题给干懵了,一气之下写出万字长文。 (4)

假设这个时候 switch 表达式的值是 3,我直接根据偏移量 3,就可以取到 3 对应的接下来需要执行的地方 69,然后接着执行 default 语句了:所以,0,1,2 不叫稀疏,0,2,4 也不叫稀疏。它们都不 sparse ,缺一点点的情况下,我们可以补位。所以现在你理解官网上...

why哥被阿里一道基础面试题给干懵了,一气之下写出万字长文。 (3)

why哥被阿里一道基础面试题给干懵了,一气之下写出万字长文。 (3)

结合着 class 文件看:奇怪了,同样的 switch 语言,却对应两个指令:lookupswitch 和 tableswitch。所以这两个指令肯定是关键突破点。我们去哪里找这个两个指令的信息呢?肯定是得找权威资料的:怎么样?The Java® Virtual Machine Specifica...

why哥被阿里一道基础面试题给干懵了,一气之下写出万字长文。 (2)

why哥被阿里一道基础面试题给干懵了,一气之下写出万字长文。 (2)

Otherwise,就是否则的意思。带入上下文也就是说前面的表达式是正常计算出来了一个东西了。那么就拿着计算出来的这个东西(表达式的值)和每一个 case 里面的常量来对比,会出现以下的情况:如果表达式的值和其中一个 case 语句中的常量相等了,那么我们就说 case 语句匹配上了。switch ...

why哥被阿里一道基础面试题给干懵了,一气之下写出万字长文。 (1)

why哥被阿里一道基础面试题给干懵了,一气之下写出万字长文。 (1)

荒腔走板大家好,我是 why,欢迎来到我连续周更优质原创文章的第 65 篇。老规矩,先荒腔走板聊聊技术之外的东西。上面这图是去年的成都马拉松赛道上,摄影师抓拍的我。哎,真是阳光向上的 95 后帅小伙啊。今年由于疫情原因,上半年的马拉松比赛全部停摆了。今年可能也没有机会再跑一次马拉松了。只有回味一下去...

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。

社区圈子

Java面试那些事儿
Java面试那些事儿
3+人已加入
加入
相关电子书
更多
Java开发者面试百宝书
云栖社区特邀专家徐雷Java Spring Boot开发实战系列课程(第20讲):经典面试题与阿里等名企内部招聘求职面试技巧
面试常考算法
立即下载 立即下载 立即下载