VB.Net 列表.查找。将值传递给谓词

2023-12-27

使用带有自定义谓词的 List.Find 时遇到一些问题

我有一个函数可以做到这一点

private function test ()
    Dim test As Integer = keys.Find(AddressOf FindByOldKeyAndName).NewKey

这是谓词的函数

Private Shared Function FindByOldKeyAndName(ByVal k As KeyObj) As Boolean
        If k.OldKey = currentKey.OldKey And k.KeyName = currentKey.KeyName Then
            Return True
        Else
            Return False
        End If


    End Function

通过这样做意味着我必须在类中拥有一个共享的“currentKey”对象,并且我知道必须有一种方法来传递我感兴趣的 CurrentKey 值(即键名和旧键)

理想情况下我想用类似的方式来称呼它keys.Find(AddressOf FindByOldKeyAndName(Name,OldVal))

但是,当我这样做时,我收到编译器错误。

我如何调用这个方法并传入值?


您可以使用 VS2008 及更高版本中提供的 lambda 表达式干净地解决此问题。一个愚蠢的例子:

Sub Main()
    Dim lst As New List(Of Integer)
    lst.Add(1)
    lst.Add(2)
    Dim toFind = 2
    Dim found = lst.Find(Function(value As Integer) value = toFind)
    Console.WriteLine(found)
    Console.ReadLine()
End Sub

对于早期版本,您必须将“currentKey”设置为类的私有字段。检查我的代码这个线程 http://social.msdn.microsoft.com/Forums/en-US/netfxbcl/thread/937ed805-99f2-4579-9356-d6676fc5dcb2以获得更清洁的解决方案。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

VB.Net 列表.查找。将值传递给谓词 的相关文章

  • 在 VB 2010 中禁用“默认实例”

    我已经开始在 VB 2010 中做一些基本的 win 表单工作 我真的很烦恼默认实例 https stackoverflow com q 4698538 794234特征 有没有办法可以完全禁用它并像普通类一样使用这些类 向表单的构造函数添
  • 选项卡索引不适用于面板中的控件?

    我有一个 vb net Windows 窗体 其中包含大约 15 个组合框和 15 个文本框 以及其他几个控件 所有这些TextBoxes and ComboBoxes位于面板中 原因是我需要根据用户选择 输入的内容来调整控件的可见属性 因
  • SQL存储过程执行时间差异

    我在 win form 应用程序中遇到奇怪的问题 我正在调用一个存储过程 并且执行大约需要 6 秒 此存储过程接受多个参数 包括一个输出参数 从应用程序级别我使用 Dim dt1 DateTime Now cmd ExecuteNonQue
  • 使用 JSON.net 反序列化

    我对 json JSON net 等都很陌生 在这里阅读类似的问题后 我无法让我的代码工作 我的错误到底是什么 我监督了什么 出于测试目的是否可以跳过 链接 和 元 类 或者我是否必须定义每个属性 我得到以下 REST 输出 codes h
  • 更改组合框下拉列表边框的颜色

    My code Private Sub ComboBox2 DrawItem sender As Object e As DrawItemEventArgs Handles ComboBox2 DrawItem If e Index lt
  • VB无法访问不同项目中的类,相同的解决方案

    我正在使用 VB for Visual Studio 工作 并且项目中有一个类需要将变量声明为另一个项目中的类 对于可视化 解决方案 A 包含 Project1 和 Project2 在 Project1 的类中 我需要声明一个变量作为 P
  • xmlns 元素的顺序重要吗

    我不知道如何在 google 中搜索此内容 但是 xmlns 元素的问题在 XML 文件中重要吗 我正在 ASP NET VB 中使用 XMLWriter 创建一个 XML 文件 并且尝试匹配我提供的示例
  • 从 VB.NET 应用程序填写 PDF 表单

    我的任务是在 VB Net 中创建一个 Windows 应用程序 要求之一是从 MSSQL 数据库读取数据 并将某些值放入 PDF 表单中 如何使用 VB Net 将数据放入预先存在的 PDF 文件中 另外 是否可以将PDF文件作为资源放入
  • vb.net if 简写

    有没有办法使用速记来做这样的事情 If Not txtBookTitle Text String Empty Then objBook DisplayName txtBookTitle Text End If objBook Display
  • 根据值从绿色到红色[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我需要一个在 vb net 中返回从红色 值 0 到绿色 值 100 的颜色的函数 另外 我需要一种方法来确定字体的颜色应该是白色还是
  • 如何在 vb.Net 中设置默认表单?

    如何将第四个表单设置为在 Visual Studio 2008 中按 f5 时将运行的默认表单 因为表单 1 始终是第一个启动的 在解决方案资源管理器中右键单击您的项目 选择属性 选择应用程序选项卡 从 启动表单 下的下拉列表中选择您的表单
  • System.Linq.Dynamic 不支持 OrderByDescending("someColumn")?

    好的 在我们的项目中 我使用 System Linq Dynamic 库 但我刚刚注意到我无法执行以下操作 myDataSource OrderByDescending someColumnName 因为我收到以下错误 重载解析失败 因为无
  • 如何使用 VB.NET 或 C#.NET 代码从 yahoo 邮件 ID 发送邮件

    我想从我的 yahoomail Id 发送邮件 如何使用 VB NET 或 C NET 代码从 yahoo mail Id 发送邮件 需要善意的帮助 提前谢谢 西瓦库马尔 以下是一些制作基本 html 电子邮件消息的示例 http help
  • 您是否必须在 VB.NET 中显式创建表单实例? [复制]

    这个问题在这里已经有答案了 如果一个项目包含Form类 形式可以通过以下方式显示 Form1 Show 或者是否需要首先创建表单的实例 Dim frm As New Form1 frm Show 正如所建议的 使用表单名称使用默认实例 而第
  • 检测 404 而不捕获异常

    简单功能 检查网络服务器是否返回非 200 HTTP 状态 Private Function RemoteFileOk ByVal Url As String As Boolean Dim req As HttpWebRequest Try
  • windows XP中如何设置默认编码?

    我尝试使用 StreamReader 打开文件并设置编码 但我希望它采用默认 Windows 编码 我如何更改我的 Windows 编码 区域和语言选项控制面板项目 高级选项卡 影响整个计算机
  • 使用 Rijndael 解密文本文件

    我用过本指南 https www codeproject com Articles 12092 Encrypt Decrypt Files in VB NET Using Rijndael加密的值txtCode Text到一个文本文件中 然
  • Activator.CreateInstance 缺少方法异常

    我在 C dll 中有一个类 其中包含以下类 public class RequiredTask Base BaseObject public string Name get set public string Description ge
  • 计算文本框中换行的行数

    我在文本框中有一行文本 并且换行为多行 如何计算文本框中换行的行数 你可以使用String Split int lineCount txt Text Split new n r StringSplitOptions None Length
  • 英文日期差异

    接近重复 如何计算相对时间 https stackoverflow com questions 11 how do i calculate relative time 如何在 C 中计算某人的年龄 https stackoverflow c

随机推荐

  • 如何创建行为类似于 .cmd/.bat 的文件扩展名?

    我想这是一个奇怪的问题 但我很好奇 这是我迄今为止尝试过的 我已经导出并比较了值 HKEY CLASSES ROOT batfile HKEY CLASSES ROOT cmdfile HKEY CLASSES ROOT bat HKEY
  • Laravel 5 输入旧为空

    我的路线在这里 Route get sign up as gt signUp uses gt UserController signUpGet Route post sign up as gt signUpPost uses gt User
  • 在sqlite数据库android中插入日期时间

    如何使用 contentvalues 而不使用原始查询在我的 sqlite 数据库中插入日期时间数据 datetime now 插入自身 文本 而不是时间 我可以在当前时间上添加额外的时间吗 就像 当我按下按钮 1 HOUR 时 它会在 s
  • 了解 Java 易失性可见性

    我正在阅读有关 Java 的内容volatile关键字并对它的 可见性 感到困惑 volatile 关键字的典型用法是 volatile boolean ready false int value 0 void publisher valu
  • 如何从类内实例化的对象访问私有变量

    我正在尝试更改对象内部类的私有变量 该变量是在该类内部初始化的 我的意图可以从下面的简单例子中看出 这Increment打电话自obj应增加BaseClass stuff template
  • 在 VS2017 中找不到 ADO.net 实体数据模型模板

    我试图在 Visual Studio 2017 中创建 ASP NET MVC Web 应用程序 我需要采用 EF 数据库优先的方法来完成这项工作 不幸的是 我在 数据 模板文件夹中找不到 ADO NET 实体数据模型模板 我尝试过以下建议
  • Android 5.0 上窗口动画与导航栏重叠

    我正在实施材料设计底板 http www google com design spec components bottom sheets html我的应用程序中的设计模式使用自定义子类Dialog 该对话框被吸引到屏幕底部并使用 y 平移窗
  • 在 Hive 表中插入覆盖分区 - 值重复

    我创建了一个 Hive 表不分区表并使用选择查询将数据插入已分区蜂巢表 参考网站 https blog safaribooksonline com 2012 12 03 tip partitioning data in hive 通过上面的
  • 如何在一切都清楚的情况下重新启动 googlecolab 运行时?

    我在 colab 上安装了许多库和许多设置 现在我想清除我的 colab 帐户上的所有设置 文件 库和所有内容 有可能吗 To drop your current backend and start fresh with a new one
  • 角度材质对话框在导航后未关闭

    我正在开发一个显示数据表中实体概述的应用程序 每个实体都有链接实体 这些实体在列中显示为 xxx 链接实体 当用户单击该列的值时 将打开一个材料对话框 显示链接实体的列表 这些都是到其他实体的链接 单击这些链接之一后 会显示实体的正确页面
  • 如何提高 Google Big Query 每日查询配额

    我们正在运行批处理 并达到每日查询配额 20 000 有办法提高限额吗 thanks 我们通常很乐意提高每天的查询限制 目前为 40k 天 一般来说 它是为了防止滥用场景 使用 BigQuery 作为计算器的人 例如SELECT 17 32
  • 我可以在 1 个应用程序中拥有同一 UserControl 的多个实例吗?

    我正在创建一个文本编辑器类型应用程序 我可以通过选项卡打开多个编辑器 在我的第一次尝试中 我使用了简单的TextBoxes 编辑文本 一切正常 然后我创建了一个UserControl封装文本框 按钮来执行文本操作 例如 粗体 斜体等 我发现
  • 如何添加带有嵌套资源的删除路线 Rails 4

    Todo 有很多项目 我正在尝试添加一个链接以从待办事项列表中删除项目 我尝试过通过 id 在待办事项列表下查找项目的变体 但我无法弄清楚 这是基于我所做的更改的最新错误 我不知道如何解决这个问题 错误信息 No route matches
  • 在 R 函数中调用 SQL 函数

    我想知道是否可以致电SQL内的功能R功能 举例来说 我有这个虚拟数据并且SQL函数写在Postgres 9 3 CREATE TABLE tbl id VARCHAR 2 PRIMARY KEY name TEXT year born NU
  • ServiceStack - 是否有最新的、完整的文档?

    我正在尝试了解 ServiceStack 虽然它声称它拥有非常好的文档 但到目前为止情况似乎并非如此 是否有文档实际说明要使用哪些接口 基类以及它们的作用 只是 有一堆问题 并且能找到很少的答案 新的API设计 https github c
  • 如何安装气体预处理器?

    抱歉这个愚蠢的问题 我想安装气体预处理器 https github com yuvi gas preprocessor 但我只是不知道如何做到这一点 我与 pl 文件有什么关系 如何安装脚本 提前致谢 亚历克斯 好吧 我遇到了同样的问题 找
  • 如何在 jupyter 笔记本中添加/编辑代码片段?

    我尝试按照扩展的自述文件中给出的说明进行操作 我使用 Windows 并打开我的笔记本 我使用存储在目录中的 jupyter notebook exe Anaconda3 脚本 在 Anaconda3 目录中 我转到子目录 Anaconda
  • OLAP 中的锁定问题是什么?

    在一家当地金融机构 我因为向他们表达了我的观点 他们的程序员的痴迷 而被他们的程序员斥责 b 他们的 MS SQL Server 2005 OLAP SSAS 数据库中的锁定问题对我来说没有多大意义 OLTP 数据库是 SQL Server
  • 在 jQuery UI 日期选择器上禁用一周中的特定日期[重复]

    这个问题在这里已经有答案了 可能的重复 jQuery UI 日期选择器可以禁用周六和周日 以及节假日 吗 https stackoverflow com questions 501943 can the jquery ui datepick
  • VB.Net 列表.查找。将值传递给谓词

    使用带有自定义谓词的 List Find 时遇到一些问题 我有一个函数可以做到这一点 private function test Dim test As Integer keys Find AddressOf FindByOldKeyAnd