Foxtable(狐表)用户栏目专家坐堂 → [讨论]集合中的AddRange方法


  共有1886人关注过本帖树形打印复制链接

主题:[讨论]集合中的AddRange方法

帅哥哟,离线,有人找我吗?
wyz20130512
  1楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1249 积分:9474 威望:0 精华:0 注册:2013/5/12 9:22:00
[讨论]集合中的AddRange方法  发帖心情 Post By:2017/6/29 8:52:00 [只看该作者]

Dim countrys(),citys() As String '申明两个字符数组
countrys = New String() {"中国","美国","英国","日本"}
citys = New String() {"北京","纽约","伦敦","东京"}
Dim zd As New Dictionary(Of String,String)
zd.Keys.AddRange(countrys)
zd.Values.AddRange(citys)

为何通过AddRange()方法批量向集合中增加值会报错?

 回到顶部
帅哥哟,离线,有人找我吗?
jspta
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:七尾狐 帖子:1732 积分:11266 威望:0 精华:0 注册:2011/12/15 22:06:00
  发帖心情 Post By:2017/6/29 9:02:00 [只看该作者]

字典是一对键值,你怎么可以分开来加那?你这个用list就行了


 回到顶部
帅哥哟,离线,有人找我吗?
有点色
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/6/29 9:53:00 [只看该作者]

 如果你要用字典,赋值必须用 for i as integer = 0 to countrys.length - 1

 回到顶部
帅哥哟,离线,有人找我吗?
wyz20130512
  4楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1249 积分:9474 威望:0 精华:0 注册:2013/5/12 9:22:00
回复:(有点色) 如果你要用字典,赋值必须用 f...  发帖心情 Post By:2017/6/29 19:19:00 [只看该作者]

这个我知道,只是不解的是:集合不是有一个AddRange()方法可以批量加入多个值吗?

用AddRange方法,可以将一个数组或另一个集合中的所有元素加入到集合中,例如:

Dim v1() As String = {"中国","美国","日本","俄罗斯"}
Dim s1 As New List(of String)
Dim 
s2 As New List(of String)
s1.AddRange(v1) '将数组中的元素全部加入到集合中
s2.AddRange(s1) '将集合s1中的元素全部加入到集合s2中


http://www.foxtable.com/webhelp/scr/0217.htm


 回到顶部
帅哥哟,离线,有人找我吗?
有点色
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/6/29 21:04:00 [只看该作者]

 字典不能分开赋值,分开赋值以后无法做到一一对应了。这是规则。

 回到顶部