繁体   English   中英

将C#代码转换为VB.net的问题

[英]Problems with converting a C# code to VB.net

我无法将以下代码转换为vb.net,因为我对lambda表达式不太熟悉。 特别是最后一行是我的问题。 由于最后一行,Teleric Code Converter没有帮助我。 有人可以帮我吗?

int[] numbers = { 1, 3, 4, 9, 2, 4 };
int numToRemove = 4;
int numIndex = Array.IndexOf(numbers, numToRemove);
numbers = numbers.Where((val, idx) => idx != numIndex).ToArray();

自VB6(!)以来未使用过VB-尽管可以:

    Dim numbers() = {1, 3, 4, 9, 2, 4}
    Dim numToRemove As Integer = 4
    Dim numIndex As Integer = Array.IndexOf(numbers, numToRemove)
    numbers = numbers.Where(Function(ByVal val, ByVal idx) idx <> numIndex).ToArray()

(这只是免责声明,因为上述内容可能不是最佳做法!)

如果将最后一行的输出存储在新变量中,则可以使用Telerik进行转换。 然后你得到这个:

Private numbers As Integer() = {1, 3, 4, 9, 2, 4}
Private numToRemove As Integer = 4
Private numIndex As Integer = Array.IndexOf(numbers, numToRemove)
Private result = numbers.Where(Function(val, idx) idx <> numIndex)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM