检查对象列表中是否存在对象

Big Al Ruby新手

我需要的是什么代码我应该替换为:<-- code (exist) -->

我有一个在表中创建单元格的类。我将这些单元格存储在单元格列表中。

List<Cell> locations = new List<Cell>(); 

我正试图找出该列表中是否存在一个单元格。我正在执行以下操作:

cell_in_array(new Cell(x, y));

public bool cell_in_array(Cell cell)
{
    if(<-- code (exist) -->){
      return true;
    } else {
      return false
    }           
}

单元类别

public class Cell
{
    int x_pos; // column
    int y_pos;// row
    public Cell(int col, int row)
    {
        x_pos = col;
        y_pos = row;
    }

    public int getRow()
    {
        return y_pos;
    }
    public int getColumn()
    {
        return x_pos;
    }
    public int[] position()
    {
        int[] cell_loc = { x_pos, y_pos };
        return cell_loc;
    }
}
CodeNotFound

通过使用的简化使您的生活变得轻松IEqualityComparer<Cell>我使用此解决方案是因为您可能需要在某个地方使用这种逻辑。

public class CellComparer : IEqualityComparer<Cell>
{
    public bool Equals(Cell x, Cell y)
    {
        if (x == null && y == null) return true;

        if (x == null || y == null) return false;

        if (x.Column == y.Column && x.Row == y.Row) return true;

        return false;
    }

    public int GetHashCode(Cell cell)
    {
        int hCode = cell.Column ^ cell.Row;
        return hCode.GetHashCode();
    }
}

使用它非常简单,如果您检查列表内容,您将看到它包含两个元素,因为第一个和最后一个添加的单元格相同。

var list = new HashSet<Cell>(new CellComparer());
list.Add(new Cell(0, 1));
list.Add(new Cell(1, 2));
list.Add(new Cell(0, 1));

HashSet谁将使用您的表格CellComparer来避免Cell重复表示感谢

因此,请使用自动属性而不是方法来返回字段的值。您的单元格类必须如下所示:

public class Cell
{
    public Cell(int col, int row)
    {
        Column = col;
        Row = row;
    }

    public int Row { get; private set; }

    public int Column { get; private set; }

    public int[] Position
    {
        get { return new[] { Column, Row }; }
    }
}

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

检查对象列表中是否存在对象属性

来自分类Dev

检查对象树中是否存在对象路径

来自分类Dev

检查对象中是否已存在对象

来自分类Dev

如何使用C#检查对象列表中是否已存在对象

来自分类Dev

检查对象列表中是否存在数组列表

来自分类Dev

检查对象是否在对象数组中-javascript

来自分类Dev

检查对象ID是否在对象ID数组中

来自分类Dev

颤动:检查列表中是否已存在对象

来自分类Dev

检查对象列表是否在另一个对象列表中已经存在

来自分类Dev

检查对象列表是否在另一个对象列表中已经存在

来自分类Dev

检查数组中是否存在对象

来自分类Dev

检查数组中是否存在对象

来自分类Dev

检查对象数组中的对象中是否存在值

来自分类Dev

检查对象密钥是否存在于对象中

来自分类Dev

检查对象中是否存在仅名称的对象

来自分类Dev

验证列表中是否存在对象

来自分类Dev

检查对象是否等于Java中存储在对象中的数据

来自分类Dev

检查对象是否等于Java中存储在对象中的数据

来自分类Dev

检查对象javascript中是否存在嵌套属性

来自分类Dev

如何检查对象原型链中是否存在属性?

来自分类Dev

如何检查对象/字典中是否存在属性?

来自分类Dev

Ruby-检查对象中是否存在某些值

来自分类Dev

如何检查对象中是否存在信号?

来自分类Dev

如何检查对象中是否存在属性?

来自分类Dev

Elasticsearch 检查对象中是否存在键

来自分类Dev

检查对象数组中是否存在值

来自分类Dev

Angular ngrx:检查对象中是否存在字段

来自分类Dev

检查对象列表中的对象类型

来自分类Dev

检查对象是否已经存在?

Related 相关文章

热门标签

归档