/* package whatever; // don't place package name! */
import java.util.*;
import java.util.List;
class Mcve {
public static void main
(String[] args
) { List
<Employee
> employees
= Arrays.
asList( new Employee("Sachin Tendulkar", 41),
new Employee("Sachin Tendulkar", 36),
new Employee("MS Dhoni", 34),
new Employee("Rahul Dravid", 40),
new Employee("Lokesh Rahul", 25),
new Employee("Sourav Ganguly", 40)
);
List
<Employee
> listToFind
= Arrays.
asList( new Employee("Sachin Tendulkar", 36),
new Employee("Rahul Dravid", 40)
);
boolean isPresent = employees.containsAll(listToFind);
System.
out.
println(isPresent
); }
}
class Employee{
private int age;
public Employee() {
}
public Employee
(String name,
int age
) { this.name = name;
this.age = age;
}
return name;
}
public void setName
(String name
) { this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public boolean equals
(Object o
) { if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
Employee employee = (Employee) o;
return age == employee.age &&
Objects.equals(name, employee.name);
}
@Override
public int hashCode() {
return Objects.hash(name, age);
}
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS51dGlsLkxpc3Q7CgpjbGFzcyBNY3ZlIHsKCiAgICBwdWJsaWMgc3RhdGljIHZvaWQgbWFpbihTdHJpbmdbXSBhcmdzKSB7CiAgICAgICAgTGlzdDxFbXBsb3llZT4gZW1wbG95ZWVzID0gQXJyYXlzLmFzTGlzdCgKICAgICAgICAgICAgICAgIG5ldyBFbXBsb3llZSgiU2FjaGluIFRlbmR1bGthciIsIDQxKSwKICAgICAgICAgICAgICAgIG5ldyBFbXBsb3llZSgiU2FjaGluIFRlbmR1bGthciIsIDM2KSwKICAgICAgICAgICAgICAgIG5ldyBFbXBsb3llZSgiTVMgRGhvbmkiLCAzNCksCiAgICAgICAgICAgICAgICBuZXcgRW1wbG95ZWUoIlJhaHVsIERyYXZpZCIsIDQwKSwKICAgICAgICAgICAgICAgIG5ldyBFbXBsb3llZSgiTG9rZXNoIFJhaHVsIiwgMjUpLAogICAgICAgICAgICAgICAgbmV3IEVtcGxveWVlKCJTb3VyYXYgR2FuZ3VseSIsIDQwKQogICAgICAgICk7CgogICAgICAgIExpc3Q8RW1wbG95ZWU+IGxpc3RUb0ZpbmQgPSBBcnJheXMuYXNMaXN0KAogICAgICAgICAgICAgICAgbmV3IEVtcGxveWVlKCJTYWNoaW4gVGVuZHVsa2FyIiwgMzYpLAogICAgICAgICAgICAgICAgbmV3IEVtcGxveWVlKCJSYWh1bCBEcmF2aWQiLCA0MCkKICAgICAgICApOwoKICAgICAgICBib29sZWFuIGlzUHJlc2VudCA9IGVtcGxveWVlcy5jb250YWluc0FsbChsaXN0VG9GaW5kKTsKCiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKGlzUHJlc2VudCk7CiAgICB9Cn0KCmNsYXNzIEVtcGxveWVlewogICAgcHJpdmF0ZSBTdHJpbmcgbmFtZTsKICAgIHByaXZhdGUgaW50IGFnZTsKCiAgICBwdWJsaWMgRW1wbG95ZWUoKSB7CiAgICB9CgogICAgcHVibGljIEVtcGxveWVlKFN0cmluZyBuYW1lLCBpbnQgYWdlKSB7CiAgICAgICAgdGhpcy5uYW1lID0gbmFtZTsKICAgICAgICB0aGlzLmFnZSA9IGFnZTsKICAgIH0KCiAgICBwdWJsaWMgU3RyaW5nIGdldE5hbWUoKSB7CiAgICAgICAgcmV0dXJuIG5hbWU7CiAgICB9CgogICAgcHVibGljIHZvaWQgc2V0TmFtZShTdHJpbmcgbmFtZSkgewogICAgICAgIHRoaXMubmFtZSA9IG5hbWU7CiAgICB9CgogICAgcHVibGljIGludCBnZXRBZ2UoKSB7CiAgICAgICAgcmV0dXJuIGFnZTsKICAgIH0KCiAgICBwdWJsaWMgdm9pZCBzZXRBZ2UoaW50IGFnZSkgewogICAgICAgIHRoaXMuYWdlID0gYWdlOwogICAgfQoKICAgIEBPdmVycmlkZQogICAgcHVibGljIGJvb2xlYW4gZXF1YWxzKE9iamVjdCBvKSB7CiAgICAgICAgaWYgKHRoaXMgPT0gbykgcmV0dXJuIHRydWU7CiAgICAgICAgaWYgKG8gPT0gbnVsbCB8fCBnZXRDbGFzcygpICE9IG8uZ2V0Q2xhc3MoKSkgcmV0dXJuIGZhbHNlOwogICAgICAgIEVtcGxveWVlIGVtcGxveWVlID0gKEVtcGxveWVlKSBvOwogICAgICAgIHJldHVybiBhZ2UgPT0gZW1wbG95ZWUuYWdlICYmCiAgICAgICAgICAgICAgICBPYmplY3RzLmVxdWFscyhuYW1lLCBlbXBsb3llZS5uYW1lKTsKICAgIH0KCiAgICBAT3ZlcnJpZGUKICAgIHB1YmxpYyBpbnQgaGFzaENvZGUoKSB7CgogICAgICAgIHJldHVybiBPYmplY3RzLmhhc2gobmFtZSwgYWdlKTsKICAgIH0KfQo=