以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [讨论]集合中的AddRange方法  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=103006)

--  作者:wyz20130512
--  发布时间:2017/6/29 8:52:00
--  [讨论]集合中的AddRange方法
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
--  发布时间:2017/6/29 9:02:00
--  
字典是一对键值,你怎么可以分开来加那?你这个用list就行了


--  作者:有点色
--  发布时间:2017/6/29 9:53:00
--  
 如果你要用字典,赋值必须用 for i as integer = 0 to countrys.length - 1
--  作者:wyz20130512
--  发布时间:2017/6/29 19:19:00
--  回复:(有点色) 如果你要用字典,赋值必须用 f...
这个我知道,只是不解的是:集合不是有一个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


--  作者:有点色
--  发布时间:2017/6/29 21:04:00
--  
 字典不能分开赋值,分开赋值以后无法做到一一对应了。这是规则。