【发布时间】:2012-09-30 23:22:56
【问题描述】:
我正在尝试借助看起来像这样的多维数组来形成一个列表。
[validatorKey][counter]
1453 10
1231 12
6431 7
1246 1
1458 2
但是,我无法应付。顺便说一句,这是我的方法。并且数组大小应该在方法的最后增加。我知道我应该使用 Array.Resize(ref array, 2);但由于我的数组是多维的,在这种情况下应该是什么合适的方法。
private int AracaAitSeferSayisiDondur(int pValidatorKey)
{
int iSeferSayisi = 0;
int[,] iSeferListesi = (int[,])ViewState["SeferListesi"];
if (iSeferListesi == null)
iSeferListesi = new int[1,1];
bool aynisiVarmi = false;
for (int i = 0; i < iSeferListesi.Length; i++)
{
if (iSeferListesi[i,0] == pValidatorKey)
{
aynisiVarmi = true;
iSeferListesi[i,1]++;
iSeferSayisi = iSeferListesi[i,1]++;
break;
}
}
if (!aynisiVarmi)
{
int arrayLength = iSeferListesi.Length;
iSeferListesi[arrayLength--, 0] = pValidatorKey;
iSeferListesi[arrayLength--, 1] = 1;
//IN THIS PART ARRAY SIZE SHOULD BE INCREASED
iSeferSayisi = iSeferListesi[arrayLength--, 1];
}
ViewState["SeferListesi"] = iSeferListesi;
return iSeferSayisi;
}
【问题讨论】:
-
数组增长得不是很好。使用
List<>或Dictionary<>。 -
有一个问题涉及调整多维数组here。我同意@Henk,但列表或字典可能比数组更适合您的需求。
-
@ŞafakGür,谢谢兄弟。
标签: c#