有没有一种方法可以对列表中的颜色元素进行排序(C#)?

耶尔卡

我的想法是,我有一个根据红色值进行排序的排序机制(后来我想以此为基础,因此我也可以按绿色和蓝色值进行排序)。我在实现这种排序机制时遇到了麻烦。

我有一个名为类Colorbox基本上是一个List<Color>,但这样一来我可以把List<Color>一个List<Colorbox>

我的平均目标是可以Colorbox根据1种颜色(红色,蓝色,绿色)的值进行订购(例如,使列表中最左边的值具有最少的红色)。

我尝试实现toCompare重写(不知道这在C#中是否有效,但我知道在Java中,当您调用sort()方法时也会调用compare )。

这给了我如下代码:

public int CompareTo(object obj) {
    Color toCompare = (Color) obj;
    if (this.CompareTo(toCompare) == 1)
    {
        return 1;
    }
    else 
    {
        return 0;
    }
}

但我看不到如何在这里实现按颜色排序或一般的排序。我是否需要写多余的东西sort()来覆盖原始文件?

我真的不知道这种排序代码应该做什么。它会按值排序,直到可以遍历列表并且什么都没有改变吗?还是对这个想法来说太长了?

在下面,我给出了该类的一般代码:

internal class Colorbox
{
    private List<Color> box = new List<Color>();
    int colorPicker = 0;
    public Colorbox(List<Color> colorList)
    {
        this.box = colorList;
    }
}

我希望有人可以帮助解释我应该做什么或应该朝哪个方向解决这个问题。

已经非常感谢,并询问我是否不清楚。

史蒂夫·丹纳

我相信您希望IComparer<T>界面比较您的Color类型。这是使用LinqPad的示例。RedColorComparer实现将根据颜色的降序对您的颜色进行排序,这听起来像您想要的。注意将其与Array.Sort行一起使用。

void Main()
{
    var colors = new Color[] { Color.Red, Color.Blue, Color.Gray };
    Array.Sort(colors, new RedColorComparer());
    colors.Dump();
}

public class RedColorComparer : IComparer<Color>
{
    public int Compare(Color a, Color b)
    {
        if (a.R < b.R)
            return 1;
        else if (a.R == b.R)
            return 0;
        else 
            return -1;
    }
}

结果是这样的:

在此处输入图片说明

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

有没有一种方法可以对子数组的张量进行排序?

来自分类Dev

有没有一种方法可以对拆分的数组进行排序?

来自分类Dev

有没有一种更干净的方法可以对列表进行排序?

来自分类Dev

有没有一种方法可以对属性进行排序而不必对它们进行“订购”?

来自分类Dev

有没有一种方法可以在python中对列表进行排序,直到找到第一个排序的k个元素?

来自分类Dev

有没有一种方法可以在Python 3+中对嵌套列表进行排序?

来自分类Dev

有没有一种方法可以对数字列表进行排序,同时在VB.net中保留其原始索引?

来自分类Dev

有没有一种方法可以对宏进行计数?

来自分类Dev

有没有一种方法可以对列表中的所有内容(除了最后一个元素)执行相同的操作?

来自分类Dev

有没有一种方法可以提取索引颜色位图(C#)中像素的索引?

来自分类Dev

有没有一种方法可以对jsonb对象中的值列表应用条件?

来自分类Dev

有没有一种方法可以在C#中向数组添加一些元素?

来自分类Dev

有没有一种方法可以使用索引对列表列表进行排序?

来自分类Dev

在Python中,有没有一种方法可以始终如一地对由列表和元组组成的列表进行排序?

来自分类Dev

在Python中,有没有一种方法可以始终如一地对由列表和元组组成的列表进行排序?

来自分类Dev

有没有一种方法可以对坐标进行排序,以便在绘制数据时可以形成封闭的形状?

来自分类常见问题

有没有一种方法可以衡量列表的排序方式?

来自分类Dev

有没有一种方法可以根据熊猫中的唯一值对列进行排序?

来自分类Dev

有没有一种方法可以对列的一部分进行分组?

来自分类Dev

有没有一种方法可以对多个对象进行一次锤击事件?

来自分类Dev

有没有一种方法可以根据特定顺序对Rails中的国家/地区进行排序?

来自分类Dev

有没有一种方法可以使for循环沿列表的元素重复?

来自分类Dev

有没有一种方法可以覆盖CSS规则以对其进行否定?

来自分类Dev

有没有一种方法可以对SciPy的随机变量进行算术运算?

来自分类Dev

有没有一种方法可以对茉莉花测试进行分类并管理排除

来自分类Dev

有没有一种方法可以对大熊猫的病情进行计数和重新计数?

来自分类Dev

有没有一种方法可以对每个项目进行NuGet软件包源设置?

来自分类Dev

TypeScript:有没有一种方法可以对Object.values返回的数组进行const断言?

来自分类Dev

有没有一种方法可以对大熊猫的病情进行计数和重新计数?

Related 相关文章

  1. 1

    有没有一种方法可以对子数组的张量进行排序?

  2. 2

    有没有一种方法可以对拆分的数组进行排序?

  3. 3

    有没有一种更干净的方法可以对列表进行排序?

  4. 4

    有没有一种方法可以对属性进行排序而不必对它们进行“订购”?

  5. 5

    有没有一种方法可以在python中对列表进行排序,直到找到第一个排序的k个元素?

  6. 6

    有没有一种方法可以在Python 3+中对嵌套列表进行排序?

  7. 7

    有没有一种方法可以对数字列表进行排序,同时在VB.net中保留其原始索引?

  8. 8

    有没有一种方法可以对宏进行计数?

  9. 9

    有没有一种方法可以对列表中的所有内容(除了最后一个元素)执行相同的操作?

  10. 10

    有没有一种方法可以提取索引颜色位图(C#)中像素的索引?

  11. 11

    有没有一种方法可以对jsonb对象中的值列表应用条件?

  12. 12

    有没有一种方法可以在C#中向数组添加一些元素?

  13. 13

    有没有一种方法可以使用索引对列表列表进行排序?

  14. 14

    在Python中,有没有一种方法可以始终如一地对由列表和元组组成的列表进行排序?

  15. 15

    在Python中,有没有一种方法可以始终如一地对由列表和元组组成的列表进行排序?

  16. 16

    有没有一种方法可以对坐标进行排序,以便在绘制数据时可以形成封闭的形状?

  17. 17

    有没有一种方法可以衡量列表的排序方式?

  18. 18

    有没有一种方法可以根据熊猫中的唯一值对列进行排序?

  19. 19

    有没有一种方法可以对列的一部分进行分组?

  20. 20

    有没有一种方法可以对多个对象进行一次锤击事件?

  21. 21

    有没有一种方法可以根据特定顺序对Rails中的国家/地区进行排序?

  22. 22

    有没有一种方法可以使for循环沿列表的元素重复?

  23. 23

    有没有一种方法可以覆盖CSS规则以对其进行否定?

  24. 24

    有没有一种方法可以对SciPy的随机变量进行算术运算?

  25. 25

    有没有一种方法可以对茉莉花测试进行分类并管理排除

  26. 26

    有没有一种方法可以对大熊猫的病情进行计数和重新计数?

  27. 27

    有没有一种方法可以对每个项目进行NuGet软件包源设置?

  28. 28

    TypeScript:有没有一种方法可以对Object.values返回的数组进行const断言?

  29. 29

    有没有一种方法可以对大熊猫的病情进行计数和重新计数?

热门标签

归档