有没有办法为类的生成实例分配索引?

问题描述 投票:0回答:1

我目前正在编写一个自然选择模拟,其中可以生成猎物和捕食者,如果两个实例发生碰撞,程序应该运行一个子例程并从程序中删除指定的猎物。捕食者和被捕食者类别存储在列表中:

Private Predator As New List(Of PredatorClass)
Private Organism As New List(Of OrganismClass)

我的代码的下一部分应该涉及定位指定捕食者和猎物在碰撞时的索引。

但是,我正在 Visual Basic Windows Form App (.NET Framework) 中编写此程序,并且在创建捕食者/被捕食生物体时添加指定的索引非常困难。

Public Sub AddOrganism(OrganismAdded As OrganismClass)
    Organism.Add(OrganismAdded)
End Sub
Public Sub AddPredator(PredatorAdded As PredatorClass)
    Predator.Add(PredatorAdded)
End Sub

我可以得到一些帮助吗,我很困惑,不知道该怎么办,而且我的编程能力不是很强。谢谢你。

我曾尝试在类创建时创建一个可枚举范围来添加这些值,但不能接受它,因为该列表是类列表而不是可分配的数据类型。我希望它能为类添加值,以便程序可以区分每个实例。

Private Predator As New List(Of PredatorClass)(Enumerable.Range("", 25))
Private Organism As New List(Of OrganismClass)(Enumerable.Range("", 25))
list winforms oop
1个回答
0
投票

如果你有一个对象并想在列表中找到它的索引,你可以使用 IndexOf:

Dim index As Integer = Organism.IndexOf(org)

其中,在此示例中,

org
是一个
OrganismClass
实例。

© www.soinside.com 2019 - 2024. All rights reserved.