请教大神一个菜鸟问题:
vb吧
全部回复
仅看楼主
level 9
飞扬65478
楼主
如何给一个静态数组赋值? 有没有简单的方法?
例如:
有4个值:张三,李四,王五,赵六
我只会这样一行一行写
dim arr1(4)
arr1(0) = "张三"
arr1(1) = "李四"
arr1(2) = "王五"
arr1(3) = "赵六"
如果有很多项的话,代码看起来不舒服。。。
2022年05月24日 09点05分
1
level 11
璐村惂鐢ㄦ埛_0748V5Z馃惥
有
dim arr
arr=array(“张三”,“李四”,“王五”,“赵柳”,“孙琦”,“侯八”)
如果有几十上百的话,建议从文件读取
2022年05月24日 09点05分
2
初音✨七奈
楼主说的是静态数组,那就不能用Array函数了
2022年05月24日 09点05分
璐村惂鐢ㄦ埛_0748V5Z馃惥
@初音✨七奈
我理解他说的“静态”就是指,已经赋值,不再改变的(等同常量)。应该不是编程意义上的“静态”
2022年05月24日 09点05分
飞扬65478
对
我菜鸟一个
2022年05月24日 12点05分
level 13
隨風🍁缒夢
dim arr1(4) 后面加as string,否则默认是Variant类型,声明为as string可以减少调用时的转化
arr1(0) = "张三"
arr1(1) = "李四"
arr1(2) = "王五"
arr1(3) = "赵六"
...
多了,虽然繁锁但是这种写法在VB里算比较高效的写法,或者用:分开,一行可以写多项
arr1(0) = "张三":arr1(1) = "李四":arr1(2) = "王五":arr1(3) = "赵六"
2022年05月24日 10点05分
3
飞扬65478
谢谢了,我还想着有没有更简洁的代码。
2022年05月24日 12点05分
隨風🍁缒夢
@飞扬65478
简洁的代码不一定高效(速度快),而代码复杂的不一定慢,看最后编译的机器代码,用arr1(0) = "张三" 赋值生成的机器代码少,速度快。当然这个速度是根据大量操作得出来的,如果不在意的,可以采用二楼的array函数
2022年05月24日 13点05分
璐村惂鐢ㄦ埛_0748V5Z馃惥
运行效率是一个方面,但程序的适用性更要考虑。所以还是建议,数据与程序分离。
2022年05月25日 02点05分
1