订单列表以数字为基础

发布于 2024-11-03 18:59:59 字数 320 浏览 1 评论 0原文

我正在使用此代码对按数字降序排列的列表进行排序

ItemsList.OrderByDescending(x => x.Views, new IntComparer());

public class IntComparer : IComparer<long>
{
    IComparer<long> Members;

    public int Compare(long x, long y)
    {
        return Math.Sign(x - y);
    }
}

,但它根本不排序:S 任何帮助请

i am using this code to order a list descending on numerical base

ItemsList.OrderByDescending(x => x.Views, new IntComparer());

public class IntComparer : IComparer<long>
{
    IComparer<long> Members;

    public int Compare(long x, long y)
    {
        return Math.Sign(x - y);
    }
}

but it doesn't order at all :S any help plz

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

○闲身 2024-11-10 18:59:59

Enumerable.OrderByDescending 是 LINQ 的一部分。

所以它不是在修改列表,而是在创建新列表。使用

ItemsList = ItemsList.OrderByDescending(x => x.Views, new IntComparer()).ToList();

或类似的东西。

Enumerable.OrderByDescending is part of LINQ.

So it is not modifying the list, but it is creating new one. Use

ItemsList = ItemsList.OrderByDescending(x => x.Views, new IntComparer()).ToList();

or something similiar.

走走停停 2024-11-10 18:59:59

您应该阅读以下内容: http://msdn.microsoft.com/fr- fr/library/bb534861.aspx#Y1185
看来这个方法不会更新列表,所以你需要存储结果。

List aList = ItemsList.OrderByDescending(x => x.Views, new IntComparer());

public class IntComparer : IComparer<long>
{
    IComparer<int> Members;

    public int Compare(long x, long y)
    {
        return Math.Sign(x - y);
    }
}

ItemsList = aList;

You should read this : http://msdn.microsoft.com/fr-fr/library/bb534861.aspx#Y1185
It seems that this method doesn't update the list, so you need to store the result.

List aList = ItemsList.OrderByDescending(x => x.Views, new IntComparer());

public class IntComparer : IComparer<long>
{
    IComparer<int> Members;

    public int Compare(long x, long y)
    {
        return Math.Sign(x - y);
    }
}

ItemsList = aList;
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文