小编Max*_*huk的帖子

LINQ与产量

我几乎不使用"yield"运算符(我不讨厌它:)).如果有可能,我更喜欢使用LINQ.无论如何,我寻找一些帖子(你可以在下面找到链接)10分钟前,阅读它和一些想法访问我的大脑:)

重写此结果的foreach收益至A-LINQ收益

想法:可能,我不使用"收益率"并不是很好.可能它具有比LINQ更好的性能或其他一些优势.

因此,我有下一个问题,上面的例子(通常情况下)哪些代码更"正确"(yield或LINQ)?

PS我对有可能使用LINQ而不是"yield"的情况感兴趣.

.net c# linq yield

4
推荐指数
1
解决办法
3571
查看次数

简单的LinQ问题:将[] []转换为[]

我想得到Item对象的集合或列表,但我现在得到数组的数组.

Item[][] s = employees.Select(e => e.Orders.Select(o => new Item(e.ID, o.ID)).ToArray()).ToArray();
Run Code Online (Sandbox Code Playgroud)

任何人都可以选择我的解决方案吗?

PS只是LinQ解决方案:)

c# linq arrays

3
推荐指数
2
解决办法
287
查看次数

容纳百万件物品的最佳收藏?

我想问一个(对我而言)感兴趣的问题。

如果集合包含大量项目(超过 100 万个),则根据标准性能,哪个集合是最佳的。

例如,我创建简单的 List(10000000) 集合并尝试添加大约 500000 个不同的项目。运行后 10 秒内将添加前 30000 个项目,但运行后 1 分钟内收集将仅包含 60000 个项目,5 分钟内将包含 150000 个项目。

据我了解,通过添加新项目,集合中的内存使用存在非线性依赖性(因为每个项目都是在“相似相等”的时间段内创建的)。但我可能会犯错误。

编辑:你是对的,没有样本还不够清楚。我正在尝试将树填充为连接列表。您可以在下面找到示例代码。

public class Matrix
{
    public int Id { get; private set; }
    public byte[,] Items { get; private set; }
    public int ParentId { get; private set; }
    public int Lvl { get; private set; }
    public int HorizontalCounts
    {
        get { return 3; }
    }

    public int VerticalCounts
    {
        get { return 3; }
    }

    public Matrix(int …
Run Code Online (Sandbox Code Playgroud)

.net collections performance

2
推荐指数
1
解决办法
5416
查看次数

标签 统计

.net ×2

c# ×2

linq ×2

arrays ×1

collections ×1

performance ×1

yield ×1