正如你所看到的,我有一个被调用的哈希表,GetEdinburgh()
但是这个程序需要运行可变时间并且每次它需要调用一个不同的哈希表。如何GetEdinburgh()
用类似的字符串替换GetTown()
?
static Hashtable GetEdinburgh()
{
Hashtable hashtable = new Hashtable();
hashtable.Add("Aberdeen", 129);
hashtable.Add("Ayr", 79);
hashtable.Add("Fort_William", 131);
hashtable.Add("Glasgow", 43);
hashtable.Add("Inverness", 154);
hashtable.Add("St_Andrews", 50);
hashtable.Add("Stirling", 36);
return hashtable;
}
static void Main(string[] args)
{
int total = 1000;
string Town = "";
Hashtable hashtable = GetEdinburgh(); //how can I change this to a string?
foreach (DictionaryEntry entry in hashtable)
{
if (Convert.ToInt32(entry.Value) < total)
{
total = Convert.ToInt32(entry.Value);
Town = entry.Key.ToString();
}
}
Console.WriteLine(Town + ", " + total + "km");
Console.ReadLine();
}
我可能没有具体说明我的问题。上面的当前代码工作正常,但我需要扩展它。我需要调用比上面提供的更多的哈希表,但我不能直接调用它。我需要有一个字符串值,每次实现循环以调用新表时都会更改。但我无法将 a 转换system.Collections.hashtable
为字符串。