java - 在 2 个数组列表中搜索对象

标签 java arraylist

我有两个包含两种类型对象的数组列表。他们是两种类型的用户。我输入了一个id(两种类型的用户都有唯一的整数id),想知道用户是否存在于两个数组列表中。

ArrayList<Artist> artist = new ArrayList();
ArrayList<Customer> customer = new ArrayList();

class Artist implements User{
      private String name;
      private int a_id = 0;
      private ArrayList<ArrayList> albums = new ArrayList();
      private int money;
      private int ma = 999;
      private int mi = 100;

      public Artist(String name) {
          this.name = name;
          a_id = (int)(Math.random()*((ma - mi) + 1)) + mi;
      }
}
...<i>getters and setters</i>

class Customer implements User {
      private String name;
      private int subscription = 1;
      private int due = 0;
      private int c_id = 0;
      private int ma = 9999;
      private int mi = 1000;

      public Customer(String name) {
        this.name = name;
        c_id = (int) (Math.random() * ((ma - mi) + 1)) + mi;
      }
}
    ...<i>getters and setters</i>

最佳答案

使用anyMatch方法和||:

public boolean exist(ArrayList<Artist> artist, ArrayList<Customer> customer, int id) {
    return artist.stream().anyMatch(user -> user.getA_id() == id) ||
            customer.stream().anyMatch(user -> user.getC_id() == id);
}

关于java - 在 2 个数组列表中搜索对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52015235/

相关文章:

java - 将子类的 ArrayList 复制到父类(super class)的 ArrayList

java - 如何检查整数中有多少个除数以及​​如何将阶乘方程表示为奇数?

java - 如何创建一个 ArrayList,我也可以像 Java 一样添加项目

java - 使用二维数组创建网格

java - 真实注销BaseGameActivity

java.lang.ClassCastException : [Ljava. lang.Object;无法转换为 com.inrev.segmentation.bean.IRUserSegment

java - 尝试在空对象引用上调用虚拟方法 - Android

java - Tomcat 前面的 Apache HTTPD 时 WebSocket 连接中断

java - 用于 Java 桌面 MVC 的 Rails

java - java 程序中的 xml 文件没有引用我的按钮