
net.amygdalum.testrecorder.util.Pair Maven / Gradle / Ivy
The newest version!
package net.amygdalum.testrecorder.util;
import java.util.Objects;
public class Pair {
private T1 element1;
private T2 element2;
public Pair(T1 element1, T2 element2) {
this.element1 = element1;
this.element2 = element2;
}
@SuppressWarnings("unchecked")
public static Pair[] zip(T1[] e1, T2[] e2) {
if (e1.length != e2.length) {
throw new IllegalArgumentException();
}
Pair[] pairs = new Pair[e1.length];
for (int i = 0; i < pairs.length; i++) {
pairs[i] = new Pair<>(e1[i], e2[i]);
}
return pairs;
}
public T1 getElement1() {
return element1;
}
public T2 getElement2() {
return element2;
}
@Override
public int hashCode() {
return Objects.hash(element1, element2) + 17;
}
@SuppressWarnings("unchecked")
@Override
public boolean equals(Object obj) {
if (this == obj) {
return true;
}
if (obj == null) {
return false;
}
if (getClass() != obj.getClass()) {
return false;
}
Pair that = (Pair) obj;
return Objects.equals(this.element1, that.element1)
&& Objects.equals(this.element2, that.element2);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy