在vb.net2005 如何对一个2维数组进行排序?在线等

email10000 2006-12-06 01:00:06
比如:strArray(1,5)


排序前:

下标 0 1 2 3 4 5

元素0的值 3 8 9 1 0 16

元素1的值 aa cc dd ff zz kk


排序后:

下标 0 1 2 3 4 5

元素0的值 0 1 3 8 9 16

元素1的值 zz ff aa cc dd kk



如何根据 元素0,进行排序!有.net自带的方法吗?还是需要自己写呢?
...全文
211 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
email10000 2006-12-06
  • 打赏
  • 举报
回复
呵呵,现在好了
dlzhangln 2006-12-06
  • 打赏
  • 举报
回复
大兄弟,结帖不是用嘴说出来的,给分啊
dlzhangln 2006-12-06
  • 打赏
  • 举报
回复
嗯,应该可以的,谢谢结帖
email10000 2006-12-06
  • 打赏
  • 举报
回复
其实用冒泡排序也可以的,谢谢,揭帖了
dlzhangln 2006-12-06
  • 打赏
  • 举报
回复
Dim arr As New ArrayList
arr.Add("0-zz")
arr.Add("1-ff")
arr.Add("3-aa")
arr.Add("8-dd")
arr.Add("16-kk")
arr.Sort()
Dim i As Integer
For i = 0 To arr.Count - 1
Console.WriteLine("{0} {1}", arr(i).ToString.Split("-")(1), arr(i).ToString.Split("-")(0))
Next
email10000 2006-12-06
  • 打赏
  • 举报
回复
有没有更好的办法呢?
dlzhangln 2006-12-06
  • 打赏
  • 举报
回复
Sub collectionSort()
Dim _result As String
Dim tb As New DataTable("tb")
Dim valuefield As New DataColumn("valuefield", GetType(Integer))
Dim charfield As New DataColumn("charfield", GetType(String))
tb.Columns.Add(valuefield)
tb.Columns.Add(charfield)
Dim row As DataRow = tb.NewRow
tb.Rows.Add(0,"zz")
tb.Rows.Add(1,"ff")
tb.Rows.Add(3,"aa")
tb.Rows.Add(8,"cc")
tb.Rows.Add(9,"dd")
tb.Rows.Add(16,"kk")
Dim dv As DataView = tb.DefaultView
dv.Sort = "valuefield DESC"

tb = New DataTable
tb = dv.ToTable("tb")

For Each _row As DataRow In tb.Rows

For Each _col As DataColumn In tb.Columns

_result.Append(_row(_col)).Append(ControlChars.Tab)

Next

_result.Append(Chr(13) & Chr(10))

Next

Response.Write(_result.ToString)

End Sub

16,554

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧