Comparando tipos genéricos usando Comparable y Comparator

Me he encontrado con un dolor de cabeza. Tengo problemas para depurar. Estoy tratando de comparar dos valores genéricos para poder ordenarlos por inserción de acuerdo con los valores en una matriz. Esta es la primera vez que trabajo con las interfaces de Comparable y Comparator, por lo que cualquier consejo adicional sobre estos temas sería excelente.

Así es como se configura mi clase:

public class SVStore<K, V extends Comparable<V>> implements Pairs<K, V>, Iterable<K>, Comparable<V>, Comparator<V> {

El método put ():

@Override
public V put(K key, V value) {

    SVData<K, V> tab[] = table;
    for (int i = 0; i < table.length - 1; i++) {
        if (value.compareTo(tab[i].dataValue) <= 0) {
            int index = i;
            for( int j = index; j < size - 1; j++){
                tab[j + 1] = tab[j];
            }
        }
        tab[i].setDataKey(key);
        tab[i].setDataValue(value);
        size++;
    }
    return value;
}

Estos son los métodos compareTo () y compare que estoy intentando implementar.

@Override
public int compareTo(V t) {
 return compare(t, this);
 }

@Override
public int compare(V t, V t1) {
    if (t.equals(t1)){
        return 0;
    } else if (t < t1){
        return -1;
    } else {
        return 1;
    }
}

El primer problema que estoy encontrando está en el método compareTo () y se centra en "esto". El error dice "requerido: V, V encontrado: V, SVStore". Sé que la respuesta no es lanzar "esto" a V. ¿Cómo lo comparo con la V en ese índice de matriz?

El segundo problema que tengo es ...} else if (t <t1) {en el método compareTo (). El error es "tipos de operandos incorrectos para el operador binario '<' primer tipo: V segundo tipo: V". Si está reconociendo ambos como V para ambos tipos, ¿por qué es un mal operando?

Creo que todo el código necesario está ahí. Trato de mantener esto lo más conciso posible, pero si hay algún código adicional que alguien necesite, me complace proporcionarlo. ¡Aclamaciones!

Respuestas a la pregunta(1)

Su respuesta a la pregunta