以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 自定义函数错误 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=145709) |
-- 作者:tld -- 发布时间:2020/2/5 13:00:00 -- 自定义函数错误 老师,帮忙看看自定义函数有什么问题?这个自定义函数取名:List_PublicMembers,目的是找出两个集合的公共部分。 下面是自定义函数的代码 Dim list1 As List(of String)= args(0) Dim List2 As List(of String)= args(1) Dim List0 As List(of String) Dim st1 As String Dim st2 As String For Each st1 In List1 For Each st2 In List2 If st1=st2 Then List0.Add (st1) Exit For End If Next Next Return List0 下面是调用该自定义函数的代码: 其中,lis1、lis2是集合,里面确定有公共成员。 Dim li As List(of String) li=Functions.Execute("List_PublicMembers",lis1,lis2) 错误信息: .NET Framework 版本:4.0.30319.42000 Foxtable 版本:2020.1.12.18 错误所在事件:自定义函数List_PublicMembers 详细错误信息: 调用的目标发生了异常。 未将对象引用设置到对象的实例。 请老师帮忙看看。谢谢! |
-- 作者:有点蓝 -- 发布时间:2020/2/5 14:04:00 -- Dim list1 As List(of String)= args(0) Dim List2 As List(of String)= args(1) Dim List0 As new List(of String) Dim st1 As String Dim st2 As String For Each st1 In List1 If List2.Contains(st1) Then List0.Add (st1) End If Next Return List0 或者 Dim list1 As List(of String)= args(0) Dim List2 As List(of String)= args(1) Dim List0 As new List(of String) Dim lst = list1.Intersect(list2) For Each s As String In lst List0.Add(s) Next Return List0 [此贴子已经被作者于2020/2/5 15:09:40编辑过]
|
-- 作者:tld -- 发布时间:2020/2/5 15:06:00 -- Intersect,这个方法好。谢谢蓝老师 |