我需要在列表或數組中存儲多個值片刻。這些值是多種類型的像字符串,整數,日期時間等等多種不同類型的值列表/數組
我有兩種選擇:
選項1:
宣告以類型的對象是這樣的陣列:
object[] values;
選項2:
申報陣列,用於接口和實現對每種類型保持自己的類。
interface IType
{
}
IType[] values;
class StringValue : IType
{
public string StringValue { get; set; } // not declared in interface!
}
class IntValue : IType
{
public int IntValue { get; set; } // not declared in interface!
}
問:
有什麼性能優勢和/或影響每個實現選項?據我所知(或quessing),boxinq有使用object[]
時自己的性能影響。
什麼備選方案二?至少使用StringValue
或IntValue
屬性需要更多的代碼,第一類必須確定,IType
必須澆鑄的StringValue或INTVALUE等等
有這麼大的影響,使用object[]
的表現,我真的應該考慮一下像選項2?
在擔心性能之前,只需實現並編寫代碼和TEST TEST TEST,然後查看性能是否成問題,然後可以根據需要優化** ** –
當然!我已經實現了選項1,因爲我知道(沒有計量!)會有一些問題,我只是想如何讓我的代碼更好。也許問題更多的是要問什麼可能比選項1更好.... – Harza
要求「更好」不會有幫助 - 你需要澄清更好的意義。 – Oded