-3

我正在使用以下代码获取帐户余额,以便在我的软件中获取余额报表。

以下是详细信息:

ASP是类名
Rev_AllAccountBalaces是一个返回数据表的函数;
BalanceSheetEndDate是 DateTime 对象
ano1是返回数据表的列名
account_balance是一个哈希表

代码 :

DataTable dt_all_account_balances = ASP.Rev_AllAccountBalaces(BalanceSheetEndDate);

for (int idx = 0; idx < dt_all_account_balances.Rows.Count; idx++)

{                        
  int ano = Int32.Parse(dt_all_account_balances.Rows[idx]["ano1"].ToString());
  double balance = double.Parse(dt_all_account_balances.Rows[idx]["balance1"].ToString());
  account_balance.Add(ano, balance);                   
}

现在让我们来解决问题..

在向 "account_balance" 添加值和键时,这些值按添加顺序添加。

例如,假设
键值
96 40000
1091 5906
1088 99
1087 4939
1089 49
99 -40000
415 -53993
1036 -100000
1090 1000
1076 42000

它们实际上被添加为
1088 99
1076 42000
1036 -100000
1091 5906
1090 1000
1089 49
99 -40000
1087 4939
96 40000
415 -53993

为什么???????

如何像 Datatable 值一样添加它们......???

4

1 回答 1

0

Hashtable 是一个映射,它是无序的。尝试使用SortedList

于 2013-03-26T10:41:23.260 回答