我在C#里面遇到一个三维数组排序问题请帮忙解决下,谢谢!!
ArrayList[] arr=new ArrayList[3];
arr[0]=new ArrayList();
arr[1]=new ArrayList();
arr[2]=new ArrayList();arr[0].Add(1);
arr[0].Add(4);
arr[0].Add(2);
arr[0].Add(3);arr[1].Add("张三1");
arr[1].Add("张三4");
arr[1].Add("张三2");
arr[1].Add("张三3");arr[2].Add("aaa");
arr[2].Add("ddd");
arr[2].Add("bbb");
arr[2].Add("ccc");怎样根据第一维数据进行排序?
2 张三2 bbb
3 张三3 ccc
4 张三4 ddd
arr[0] arr[1] arr[2] 这三个字段的结构体,
然后创建这个结构体的动态数组。
http://topic.csdn.net/u/20090526/09/2f797ddb-6612-42e3-8059-ed5b35b031c5.html
应该可以实现你的要求。
{
ArrayList[] arr = arrLis;
try
{
for (int i = 0; i < arr[0].Count - 2; i++)
{
for (int j = 1; j < arr[0].Count - i; j++)
{
int a = Convert.ToInt32(arr[0][j].ToString().Trim());
int b = Convert.ToInt32(arr[0][j - 1].ToString().Trim());
if (a < b)
{ ArrayList ar = new ArrayList();
ar = (ArrayList)arr[0].Clone();
string str1 = ar[j].ToString().Trim();
arr[0][j] = arr[0][j - 1];
arr[0][j - 1] = str1; ArrayList ar2 = new ArrayList();
ar2 = (ArrayList)arr[1].Clone(); string str2 = ar2[j].ToString().Trim();
arr[1][j] = arr[1][j - 1];
arr[1][j - 1] = str2; ArrayList ar3 = new ArrayList();
ar3 = (ArrayList)arr[2].Clone();
string str3 = ar3[j].ToString().Trim();
arr[2][j] = arr[2][j - 1];
arr[2][j - 1] = str3;
}
}
}
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
return arr;
}原来是我搞混了