這個intern()官方說法的作用是返回字串物件的規範化表示... 然而不明覺厲...
用我通俗一點說法其實就是,拿到乙個字串,那它到字串常量池中去執行equals方法,如果返回為true,就代表,有相同的則返回字串常量池裡面的那個引用,若沒有,則在字串常量池裡面建立乙個這樣的常量,這裡就會包含執行時常量池的知識了,然後再返回新建立的在字串常量池裡面的引用
下面我po出些例子來
publicclass
internofstring
}
依次的結果為 :
true
true
true
false
false
false
true
true
false
true
false
怎麼說,字串的equals 和 == 算是老生常談的話題了,無非就是被分配的vm 區域不同的問題,
一點足以:只要字串初始化中含有引用的,就肯定不會是被分配在字串常量池中,而是會在類載入時,隨機分配在方法區中,往大里說就是heap中,
,純字串的結合,例如 s1,s2, s3, s6,就會直接在字串常量池中被分配。。。
剩下的intern方法就是去字串找長得和自己一樣的頂上去,equals就是看前後兩個是不是相等,==則看是不是自己
xpath mysql xpath定位方法詳解
1.xpath較複雜的定位方法 現在要引用id為 j password 的input元素,可以像下面這樣寫 webelement password driver.findelement by.xpath id j login form dl dt input id j password 其中 id ...
python 中MethodType方法詳解和使用
usr bin python coding utf 8 from types import methodtype 檔名 class2.py methodtype 測試 首先看第一種方式 建立乙個方法 defset age self,arg self.age arg 建立乙個類 class stude...
js中splice方法和slice方法詳解
一 slice 擷取陣列 返回擷取的新陣列 不改變原始陣列 slice start,end 引數 start 開始位置的索引 end 結束位置的索引 但不包含該索引位置的元素 let arr 1,2,3,4,5 let newarr arr.slice 1,3 console.log arr 輸出 ...