vb中sorted属性仅对字符数据按升序排列,因此要把位数不同的数值数据转化成位数相同的数字字符数据,才能用sorted

vb中sorted属性仅对字符数据按升序排列,因此要把位数不同的数值数据转化成位数相同的数字字符数据,才能用sorted属性。所以书上在列表框中两位数和三位数的比较里把两位数前面加了空格。这是什么意思 我看不大懂。
mickly444 1年前 已收到1个回答 举报

爱思tt 幼苗

共回答了14个问题采纳率:85.7% 举报

它是按字符编码大小排序的,在排序数字字符时,与数字串表示的大小不完全一致的。比如“2” 比"1" 大,同样“2” 也比“10”大。
如下面两个表达式,一个返回true,一个返回False,字符串比较与数值比较不同的。
Msgbox "2" > "10"
Msgbox 2>10
所以短的数字串前面补0或空格,就纠正过来了,如“02” 就比“10” 小了。
字符串比较的是字符编码大小,"2" > "10" 相当于 Asc("2") >Asc( "10")。当然它们是逐位比较相同位的单个字符,直到比出大小时即返回结果。

1年前

4
可能相似的问题
Copyright © 2024 YULUCN.COM - 雨露学习互助 - 16 q. 2.040 s. - webmaster@yulucn.com