Я создал класс под названием Pair
, который является общим типом L
и R
, что в основном позволило бы мне хранить пары.Сортировка Arraylist, созданная с использованием Generic Class в Java
Я использую Arraylist
для хранения типа Pair
, но я не уверен, как сортировать (и, возможно, найти все элементы) в ArrayList на основе key/value
, а также распечатать ArrayList.
ArrayList<Pair> a = new ArrayList<Pair>();
Pair p = new Pair(1,1);
a.add(p);
a.add(new Pair(1,3));
//System.out.println(help please);
Ниже Pair
Класс
class Pair<L,R> {
L left;
R right;
public Pair(L left, R right) {
this.left = left;
this.right = right;
}
public L getLeft() { return left; }
public R getRight() { return right; }
@Override
public int hashCode() { return left.hashCode()^right.hashCode(); }
@Override
public boolean equals(Object o) {
if (!(o instanceof Pair)) return false;
Pair pairo = (Pair) o;
return this.left.equals(pairo.getLeft()) &&
this.right.equals(pairo.getRight());
}
}
ли объявляя 'ArrayList', содержащие сырые' экземпляры Pair' вызвать проблемы для вас? Вы скомпилировали? – Dragan
Здесь вы используете огромное количество исходных типов: 'Pair' вместо' Pair ', например. Вы действительно должны это исправить, так что у вас есть безопасность типа. –