美文网首页
关于switch语句中使用String类型的实现原理

关于switch语句中使用String类型的实现原理

作者: 卡路fly | 来源:发表于2020-05-30 01:55 被阅读0次

关于switch语句中使用String类型的实现原理

在Java 7 以后,switch语句可以用作String类型上。

从本质来讲,switch对字符串的支持,其实也是int类型值的匹配。它的实现原理如下:

通过对case后面的String对象调用hashCode()方法,得到一个int类型的Hash值,然后用这个Hash值来唯一标识着这个case

那么当匹配的时候,首先调用这个字符串的hashCode()方法,获取一个Hash值(int类型),用这个Hash值来匹配所有的case

如果没有匹配成功,说明不存在;如果匹配成功了,接着会调用字符串的equals()方法进行匹配。

由此看出,String变量不能是null;同时,switchcase子句中使用的字符串也不能为null。

相关文章

网友评论

      本文标题:关于switch语句中使用String类型的实现原理

      本文链接:https://www.haomeiwen.com/subject/epgqzhtx.html