成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

VB.NET IEnumerator接口操作代碼解讀

開發 后端
VB.NET IEnumerator接口主要功能就是幫助開發人員實現迭代,并且還能支持其中的for each等操作。下面讓我們一起來看看具體的編寫方式。

VB.NET從出現到今天已經經過了一段比較長的過渡期,而且這項技術語言正在穩步健康的向前發展,為開發人員不斷的提供新的功能。在面向對象的設計中,經常會用到有類似父子關系的這個對象,比如在我現在的一個項目中,有訂單對象,在一個訂單下又包含多個產品,這時我就想用 Iterator模式來封裝訂單下的產品,VB.NET IEnumerator接口就是用來實現迭代的,來支持VB.NET中的for each的操作。#t#

要想實現VB.NET IEnumerator接口,需在實現以下幾個函數來支持這一操作

 

  1. Overridable ReadOnly 
    Property Current() As Object 

Current用于在迭代過程中得到當前的對象

  1. Public Overridable 
    Function MoveNext() 
    As Boolean 

 

MoveNext用于在迭代過程中將迭代指針指向下一個對象,初始是迭代指針指向集合的開始(在***個節點之前的位置),一旦越過集合的結尾,在調用 Reset 之前,對 MoveNext 的后續調用返回 false。

  1. Overridable 
    Sub Reset() 

將枚舉數設置為其初始位置,該位置位于集合中***個元素之前。

只要集合保持不變,枚舉數就將保持有效。如果對集合進行了更改(例如添加、修改或刪除元素),則該枚舉數將失效且不可恢復,并且下一次對 MoveNext 或 Reset 的調用將引發InvalidOperationException。

下面是一個具體的VB.NET IEnumerator接口的對像

  1. Imports System.Collections   
  2. '在此實際實現的是System.Collections.
    IEnumerable接口,   
  3. IteratorProduct 用此接口來向使用者
    提供對VB.NET IEnumerator接口的操作。   
  4. Public Class IteratorProduct : 
    Implements System.Collections.
    IEnumerable   
  5. Private Products As Collection 
    '用Collection在存訂單中的所有產品   
  6. Private item As Integer = -1   
  7. Public Sub New()   
  8. Products = New Collection   
  9. Products.Add("xh") '這只是為了
    測試方便,將加入產品的內容直接寫在這了   
  10. Products.Add("lj")   
  11. Products.Add("qd")   
  12. End Sub   
  13. Overridable ReadOnly Property 
    Current() As Object   
  14. Get   
  15. Return Products(item)   
  16. End Get   
  17. End Property   
  18. Public Overridable Function 
    MoveNext() As Boolean   
  19. item += 1   
  20. End Function   
  21. Overridable Sub Reset()   
  22. item = -1   
  23. End Sub   
  24. '返回迭代對像給使用者   
  25. Overridable Function GetEnumerator()   
  26. As IEnumerator Implements 
    IEnumerable.GetEnumerator   
  27. Return Me.Products.GetEnumerator   
  28. End Function   
  29. End Class 

VB.NET IEnumerator接口的相關代碼示例就為大家介紹到這里。

責任編輯:曹凱 來源: 中國IT實驗室
相關推薦

2009-11-02 15:45:03

VB.NET IEnu

2009-10-29 16:23:42

VB.NET實現IEn

2010-01-13 09:31:39

VB.NET窗體打印

2010-01-13 15:01:13

VB.NET操作MyS

2010-01-08 10:48:05

VB.NET多線程

2010-01-19 17:03:25

VB.NET可執行語句

2010-01-08 14:50:47

VB.NET測試硬盤速

2010-01-07 17:51:36

VB.NET實現Sin

2010-01-20 14:32:12

VB.NET轉換運算符

2009-08-19 16:38:30

VB.NET接口范例

2009-10-27 12:06:01

VB.NET IDis

2010-01-11 11:37:08

VB.NET操作CSV

2010-01-11 11:02:27

VB.NET調用存儲過

2010-01-07 10:28:04

VB.NET實現接口

2010-01-18 16:58:29

VB.NET Over

2010-01-15 11:31:02

VB.NET接口實現多

2009-10-09 16:54:03

VB.NET窗體

2009-11-02 10:42:04

VB.NET EXCE

2010-01-08 10:37:50

VB.NET數據庫

2010-01-11 17:12:12

VB.NET事務處理
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 97精品一区二区 | 亚洲欧美在线视频 | 日本不卡高清视频 | 视频1区| 一级片子 | 久久久久国产一区二区三区 | 日韩视频在线播放 | av资源中文在线天堂 | 久久大全 | 日韩欧美在线播放 | 国产情侣在线看 | 亚洲精品99999 | 婷婷久久五月 | 国产精品久久久久影院色老大 | 亚洲国产中文字幕 | 日韩精品一 | 综合色影院 | 精品一区二区三区在线视频 | 一区二区三区免费 | 婷婷综合五月天 | 搞黄网站在线观看 | 日本在线看片 | 在线观看免费观看在线91 | 欧美日韩福利 | 国产亚洲人成a在线v网站 | www.久久久久久久久久久 | 午夜伦理影院 | 亚洲午夜精品视频 | 精品免费国产一区二区三区四区 | 午夜精品一区二区三区在线视频 | 黄在线免费观看 | 一区二区三区四区免费视频 | 久久国产精彩视频 | 一级片视频免费 | 婷婷不卡| 久久精品国产一区二区电影 | 中国黄色在线视频 | 欧美一区二区免费视频 | 国产精品福利一区二区三区 | 宅男噜噜噜66一区二区 | 成人深夜福利网站 |