当前位置: 首页 > 知识库问答 >
问题:

如何知道是否arraylist包含对象的属性值?[重复]

刁钧
2023-03-14

我想找到属性Numb中的ArrayList网格是否包含某个值。然后我想获取包含该值的条目的索引

public class Grid {
    public int numb;

    public GridSeg(int numb) {
        this.numb = numb;
    }
}

public ArrayList<Grid> grids = new ArrayList<Grid>();

for (int i = 0; i < 6; i++) {
    Grid grid = new Grid(i);
    grids.add(grid);
}

// pseudo code since I don't know how it is done
if (grids.numb.contains(12)) {
    if (grid.numb == 12) //get grid index
}

共有1个答案

柳俊彦
2023-03-14

你可以通过流来实现它

    ArrayList<Grid> grids = new ArrayList<>();
    Grid grid = grids.stream().filter(l -> l.numb == 12).findFirst().orElse(null);
    int index = grids.indexOf(grid);
 类似资料:
  • 我正在使用一个映射,并希望使用一个值对象作为映射键。。和一个列表作为值。值对象有两个属性:第一个名称、第二个名称。。我想把地图还给你。如果两个属性都与同一映射中的某个键匹配,则containsKey()为true。。 我尝试使用比较器如下 这是我正在使用的值对象 但它为我返回假...请帮助我...谢谢提前

  • 我试图使用一种方法来检查一个数组列表是否包含一个带有属性的对象。 这是我目前拥有的,但我无法让它发挥作用。

  • 问题内容: 控制台说“假”。我有一个ArrayList,我无法检查它是否包含特定的String数组。怎么办,为什么? 问题答案: 使用方法实现检查对象是否相等。但是,对于数组,等效于引用相等。即翻译为。 在上面,传递给方法的将创建一个 新 数组,该数组与最初添加到中的数组不同。 一种检查方法是遍历中的每个数组,并使用以下命令检查是否相等: 另一种方法是从Apache 使用。

  • 问题内容: Python中是否有一种方法可以确定对象是否具有某些属性?例如: 在使用a属性property之前,如何知道该属性是否存在? 问题答案: 尝试: 编辑:请参阅下面的的答案,他为寻求宽恕提供了很好的建议!一个非常的方法! 中的一般做法是,如果大多数情况下该属性很可能存在,则只需对其进行调用,然后让该异常传播,或者使用块将其捕获。这可能会比快。如果该属性在大多数时间可能不存在,或者你不确定

  • 问题内容: 我有一个像 如何检查此数组以查看Magenic是否存在?除非必须,否则我不想循环播放。我正在处理几千条记录。 更新 由于这是一个受欢迎的帖子,所以我想分享一些新发现。看来@CAFxX已经分享了!我应该更经常阅读这些内容。 借助 ECMAScript 2015 ,使用新的箭头功能甚至更加简单: 问题答案: 2018 edit :这个答案来自2011,当时浏览器没有广泛支持数组过滤方法和箭