您好,登錄后才能下訂單哦!
都是I開發,所以都是接口。
IEnumerator:集合訪問器,基礎的;沒有它,就不能使用forearch遍歷集合或數組,任何支持GetEnumerator()方法的類型都可以通過foreach結構進行運算。也可用 lamda 表達式查詢。
IEnumerable:只包含一個抽象方法GetEnumerator(),返回一個可循環訪問集合的IEnumerator對象。
IEnumerable<T> 泛型類在調用自己的SKip 和 Take 等擴展方法之前數據就已經加載在本地內存里了
IList(IList<T>)會立即在內存里創建持久數據,這就沒有實現“延期執行(deferred execution)”,如果被加載的實體有關聯實體(associations),此關聯實體不會被加載(既不立即加載,也不延遲加載)。
IQueryable<T> 是將Skip ,take 這些方法表達式翻譯成T-SQL語句之后再向SQL服務器發送命令,它并不是把所有數據都加載到內存里來才進行條件過濾.
IQeurable(IQuerable<T>)不會立即在內存里創建持久數據,只有遍歷它(如通過foreach)、把它轉換成List等情況下才會向內存加載數據,它可以實現“延期執行”,如果當前被加載的實體有關聯實體(associations),此關聯實體可被接下來的訪問加載。
IList與List 通俗一點講,只能存放同一類型的元素,強類型,不需轉換。
ArrayList:數組可存放不同的類型。元素都轉Object,所以需要強制轉換一下。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。