找回密码
 加入
搜索
查看: 1384|回复: 3

[网络通信] 二维数组的数字排序问题[已解决]

[复制链接]
发表于 2019-6-25 10:11:32 | 显示全部楼层 |阅读模式
本帖最后由 xyx115 于 2019-6-25 13:12 编辑

下面的二维数组是对每个ip地址进行测速,得到的结果。其中第一列是需要测速的ip地址,第二列是测速的延迟结果。
Row Col 0 Col 1
[0] 221.224.254.180 22
[1] 122.193.27.16212
[2] 120.52.148.118 34
[3] 18.30.103.50 3

Global $fast[4][2] = ['221.224.254.180', '122.193.27.162', '120.52.148.118', '218.30.103.50']
现在需要根据第二列的延迟,对网络ip地址进行排序,从而得到延迟最低的ip地址和延迟数。
就是说,根据第二列的数字大小,对整个数组进行排序。但使用
_ArraySort($fast, 0,0,0,1)
排序得到的结果是这样的:
Row Col 0 Col 1
[0] 122.193.27.16212
[1] 221.224.254.180 22
[2] 18.30.103.50 3
[3] 120.52.148.118 34
也就是说,把第二列的数字当成字符串进行比较了。
请教有什么好的方法,进行排序吗?谢谢!

问题已解决。采用A大的方法
 For $i = 0 To UBound($fast,1)-1
                $fast[$i][1] = Number($fast[$i][1])
        Next
最后进行排序。
发表于 2019-6-25 10:15:32 | 显示全部楼层
先对数组需要排序的列循环 Number() 重赋值一次
 楼主| 发表于 2019-6-25 13:11:19 | 显示全部楼层
afan 发表于 2019-6-25 10:15
先对数组需要排序的列循环 Number() 重赋值一次

搞定,感谢
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-6-2 17:20 , Processed in 0.074582 second(s), 20 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表