我不明白:實習生字串誤解?
MSDN說
http://msdn.microsoft.com/en-us/library/system.string.intern.aspx
因此,文本字符串與特定值的實例 只存在於系統中一次。
例如,如果您分配相同的文字串幾個 變量,運行時獲取相同的參考,從實習生池的文字 字符串,並將其分配給每個變量。
這種行爲是默認的(沒有實習生)嗎?或通過使用Intern方法?
如果它的默認值,那麼我爲什麼要使用實習生? (實例將會一次......)?
如果它不是默認:如果我寫此行1000次:
Console.WriteLine( 「LALALA」);
1)我會在內存中發生1000次「lalala」嗎? (不使用實習生...)
2)將「lalala」最終Gc'ed?
3)「lalala」是否已經實習?如果是這樣,爲什麼我需要從池中「獲得」它,而不是隻是再寫一次「lalala」?
林有點混淆。
那麼爲什麼我要使用'string.intern(「lalala」)'如果它自動從池中獲取?我可以使用「lalala」....請澄清... :) toda。 – 2012-01-01 08:10:04
@RoyiNamir - 增加了一些關於'string.Intern'的信息。希望澄清一點。 – Oded 2012-01-01 08:14:09
一如既往的謝謝你。第二部分爲我闡明瞭一些事情。 – 2012-01-01 08:23:58