關於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。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM