将数据存储和计算到Hashtable中

时间:2010-12-13 02:05:38

标签: vb.net visual-studio-2008 hashtable

我正在制作一个需要一些计算的小工具。我使用哈希表来存储我需要计算的值。此工具从网页上连续提取特定时间间隔(30秒)的数据,并将这些数据添加到哈希表中。现在的问题是我需要存储以前的提取数据,当新的提取发生时,我需要从新数据中扣除以前的数据。

以下是我目前正在遵循的流程:

Dim MyTable as New Hashtable

MyTable.Add("Data1","200")
MyTable.Add("Data2","100")

MyTable.Add("Data3", MyTable.Item("Data1") - MyTable.Item("Data2") )

'Here I need to redefine the value of Data2 as same as Data1
MyTable.Add(MyTable.Item("Data1"))

首次运行时,它显示Data3 = 100的结果。但在第二次运行时,我需要重新定义Data2 = Data1的值。所以我需要在第二次运行时得到Data3 = 0的结果。这可能不是进行此类操作的正确方法。我也尝试使用listbox,listview甚至textfile存储Data2并在第二次运行时调用它。但是无法实现。

这是我工具的最后一个阶段,我坚持不懈。所以,我真的希望有人能在这方面帮助我。

由于

1 个答案:

答案 0 :(得分:1)

老兄,我不太明白你在问什么,不过我会试一试。首先,我不相信你需要使用HASTABLE,除非你通过键搜索列表。您似乎只想在应用程序运行时范围(或生命周期)内保留先前的调用结果。考虑让你的vairables全球化。

'This variable is outside the scope of the function.
Private previousResult As Integer

Public Function ComputeData(valueOne as Integer, ValueTwo as Integer) as Integer

previousResult = valueOne - valueTwo

Return previousResult

End Function

每当调用ComputeData时,新的计算结果都存储在previousResult变量中。请注意,它是应用程序生命周期内的有效存储。