Foxtable(狐表)用户栏目专家坐堂 → 搞不懂


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

主题:搞不懂

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


加好友 发短信
等级:小狐 帖子:392 积分:2927 威望:0 精华:0 注册:2020/1/22 20:48:00
搞不懂  发帖心情 Post By:2020/7/6 23:18:00 [只看该作者]

大师:下面的语句为何加红色的代码就不行?字典的集合为空?
Dim zd As new Dictionary(of String,List(of String))
Dim jh As new List(of String)
jh = DataTables("类型表").GetValues("编号")
For Each zf As String In jh
'Output.Show(zf)
    Dim jh1 As new List(of DataRow)
    jh1 = DataTables("类型表").Select("编号 = '" & zf & "'")
   'Output.Show(jh1.Count) 
    Dim jh2 As new List(of String)
    For Each tr As DataRow In jh1
        jh2.Add(tr("索引"))
    Next
    zd.Add(zf,jh2)
    'jh1.Clear
    'jh2.Clear
Next


 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110662 积分:563224 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/7/7 8:51:00 [只看该作者]

集合是引用类型,和添加到字典里面的是同一个对象。

再说循环里每次都是new的,也没有必要清空,完全多余

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


加好友 发短信
等级:小狐 帖子:392 积分:2927 威望:0 精华:0 注册:2020/1/22 20:48:00
  发帖心情 Post By:2020/7/7 9:44:00 [只看该作者]

那请问如果我把集合定义放在循环外部呢?

 回到顶部
帅哥,在线噢!
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110662 积分:563224 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/7/7 9:49:00 [只看该作者]

放到哪都会影响字典里的集合。就1楼的用法有什么问题?

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


加好友 发短信
等级:小狐 帖子:392 积分:2927 威望:0 精华:0 注册:2020/1/22 20:48:00
  发帖心情 Post By:2020/7/7 10:59:00 [只看该作者]

如果jh2的定义放在循环外面,不用jh2.clear,不重复增加吗?

 回到顶部
帅哥,在线噢!
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110662 积分:563224 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/7/7 11:01:00 [只看该作者]

不适合放外面

 回到顶部