【问题标题】:How come Linq functions are available on a variable which can be of a type string为什么 Linq 函数可用于可以是字符串类型的变量
【发布时间】:2010-12-03 07:40:11
【问题描述】:

请帮我解答这个问题。我认为 Linq 适用于集合或数组。 Linq 是如何在单个字符串变量上工作的。

【问题讨论】:

    标签: .net linq string linq-to-objects


    【解决方案1】:

    LINQ To Objects 主要在IEnumerable<T> 上工作,这是指定类型序列的规范接口。 System.String 实现了IEnumerable<char>,这意味着它可以被视为一个字符序列。

    [SerializableAttribute]
    [ComVisibleAttribute(true)]
    public sealed class String : IComparable, 
        ICloneable, IConvertible, IComparable<string>, IEnumerable<char>, 
        IEnumerable, IEquatable<string> 
    

    LINQ 本身就是一个模式,比什么都重要。就此而言,它不限于IEnumerable&lt;T&gt;IQueryable&lt;T&gt;

    【讨论】:

      【解决方案2】:

      两者都不是。 LINQ(对象)由一组扩展方法组成,这些方法在 IEnumerable&lt;T&gt; 和/或 IQueryable&lt;T&gt; 上运行。
      因为string 类型实现了IEnumerable&lt;char&gt;,所以LINQ 方法可以访问string

      托马斯

      【讨论】:

        猜你喜欢
        • 2011-04-28
        • 1970-01-01
        • 1970-01-01
        • 2017-04-17
        • 2019-02-25
        • 2017-03-24
        • 2016-11-27
        • 2017-01-30
        • 1970-01-01
        相关资源
        最近更新 更多