【问题标题】:How do I convert this VB.NET array expression to C#如何将此 VB.NET 数组表达式转换为 C#
【发布时间】:2013-03-30 18:31:12
【问题描述】:

在 VB.net 中,我可以写:

If {"red", "blue"}.Contains("blue") Then Return True

Contains 似乎来自 Linq.Enumerable(Of T)。

我无法将其转换为 C# - 当我使用像 Developer Fusion 这样的在线转换工具时,它给了我:

if ({"red", "blue"}.Contains("blue")) return true;

但它没有编译,说它无法解析符号Contains,这不是很有帮助。我确定这是一个简单的语法问题,但我不确定您如何称呼这样的示例。

我不需要实例化数组,因为我只是使用它来计算内联表达式。这在 VB.NET 中似乎是可能的。你怎么称呼它 - 一个静态数组?常量数组?匿名数组?列出的一些组合?

我想知道如何用 C# 编写它,以及它叫什么(我将更新问题标题和标签,以更好地反映我在有人可以回答时提出的问题)。谢谢!

【问题讨论】:

    标签: c# arrays vb.net vb.net-to-c# array-initialization


    【解决方案1】:

    这将是您的直接转化

    if (new []{"red", "blue"}.Contains("blue")) return true;
    

    哦,它叫array initializer

    【讨论】:

    • 好的,那么在 C# 中,您必须实例化数组吗?
    • @Lumirris - 是的!初始化是明确的!
    • 在 C# 和 VB 中,数组都是实例化的 - 只是 VB 允许您省略“新建”。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-13
    • 1970-01-01
    • 1970-01-01
    • 2010-12-21
    • 1970-01-01
    相关资源
    最近更新 更多