本文介紹Java中關于String最常見的10個問題:
1. 字符串比較,使用 "==" 還是 equals() ?
簡單來說, "==" 判斷兩個引用的是不是同一個內存地址(同一個物理對象).
而 equals 判斷兩個字符串的值是否相等.
除非你想判斷兩個string引用是否同一個對象,否則應該總是使用 equals()方法.
如果你了解 字符串的駐留 ( String Interning ) 則會更好地理解這個問題
2. 對于敏感信息,為何使用char[]要比String更好?
String是不可變對象, 意思是一旦創建,那么整個對象就不可改變. 即使新手覺得String引用變了,實際上只是(指針)引用指向了另一個(新的)對象.
而程序員可以明確地對字符數組進行修改,因此敏感信息(如密碼)不容易在其他地方暴露(只要你用完后對char[]置0).
3. 在switch語句中使用String作為case條件?
從 JDK7 開始,這是可以的,
主站蜘蛛池模板:
乌审旗|
得荣县|
塔城市|
中方县|
长垣县|
兴义市|
孟津县|
会东县|
庄浪县|
申扎县|
金塔县|
田林县|
电白县|
青浦区|
南和县|
广西|
康定县|
韩城市|
珲春市|
积石山|
开封县|
新安县|
大新县|
湘潭县|
灵武市|
科尔|
香河县|
绩溪县|
勃利县|
长治市|
思茅市|
开阳县|
湘阴县|
云林县|
西峡县|
前郭尔|
宝鸡市|
喜德县|
中超|
乌兰浩特市|
建始县|