尽管场景很奇怪,但并非作业问题。我刚刚用我正在使用的真实对象来简化示例。创建集合对象
This让我从这里开始,但不确定如何继续。我试图写一个包含集合的类,并且我迷失在IEnumerator
和IEnumerable
的世界中,这是我非常陌生(甚至不完全确定我在正确的道路上)。比方说,我有一个类:
Public Class BakedBean
Private Shape As String
Private Variety As String
Private Flavour As String
'etc
End Class
而另一个类来表示的BakedBean
个集合:
Public Class TinOfBeans
'?
End Class
我希望能够在TinOfBeans
类来获得Beans
的收集,从而使我可以拨打电话这样的,但没有被捆绑到特定集合类型:
Dim myTin As New TinOfBeans()
myTin.Add(New BakedBean(...))
For Each bean As BakedBean in myTin
'...
Next
myTin(0).Flavour = "beany"
我一直在看IEnumerable
和IEnumerator
,我有这么多,到目前为止,但我越来越非常失去了它:
BakedBean类
Public Class BakedBean
Private Shape As String
Private Variety As String
Private Flavour As String
'etc
End Class
BeansEnumerator类
Public Class BeansEnumerator
Implements IEnumerator
Private Position As Integer = -1
Public ReadOnly Property Current As Object Implements System.Collections.IEnumerator.Current
Get
'???
End Get
End Property
Public Function MoveNext() As Boolean Implements System.Collections.IEnumerator.MoveNext
'???
End Function
Public Sub Reset() Implements System.Collections.IEnumerator.Reset
Position = -1
End Sub
End Class
TinOfBe答类
Public Class TinOfBeans
Implements IEnumerable
Private beansEnum As BeansEnumerator
Public Function GetEnumerator() As System.Collections.IEnumerator Implements System.Collections.IEnumerable.GetEnumerator
Return beansEnum
End Function
End Class
在这一点上我得到的结,而捆绑起来,而且不知道如何着手(或者,正如我在开始时说,如果这是即使是正确的做法)。有什么建议么?
让我看看,如果我理解你。你想要一个List的类? – Alexandre
我想要一个类是一个集合,不一定是一个List。 – Kai
我可以问你为什么需要这个?标准收藏有什么问题? – Alexandre