我必须在一个对象中进行特定的排序。我阅读了很多教程并使用了 Comparable 类。
我的课:
public class PaAcao implements Serializable, IAcao, Comparable<PaAcao> /* Ordenar */  {
@Override
public int compareTo(PaAcao acaoCompara) {
    //return this.aresta - outro.aresta;
    int i = 0;
    String[] array1 = this.cnrAcao.split(".");
    String[] array2 = acaoCompara.cnrAcao.split(".");
    
    for(String c : array1){
        if (array2.length > i){             
            if (Integer.parseInt(c) > Integer.parseInt(array2[i])) 
            {
                return 1;
            }
            if (Integer.parseInt(c) < Integer.parseInt(array2[i])) 
            {
                return -1;
            }               
        }
        i++;
    }               
    return -1;
}  
对于这个类,我有一个接口:
package br.com.agraria.qualidade.model.entity;
public interface IAcao{
    public abstract String getCnmUsuarResp();   
    public abstract Usuario getusuarResp();
    public abstract void setusuarResp(Usuario usuarResp);
    public abstract PaStatusAcao getIcdStatus();
    public abstract String getCnrAcao();
    public abstract Boolean getLpublico();
}
我得到以下错误:
public class PaAcaoServiceImpl extends HibernateGenericServiceImpl<PaAcao> implements PaAcaoService {
    @Override
    public List<? extends IAcao> processarAcoes(List<? extends IAcao> acoesProcessar) {
        SessaoPrivilegiosGerente sessaoPrivilegiosGerente = sessaoService.getSessaoPrivilegiosGerente();
        List<IAcao> macroRemover = new ArrayList<IAcao>();
    
        Collections.sort(acoesProcessar);
        
        ...
    }
}
问题在于Collections.sort(acoesProcessar); 我收到消息:
绑定不匹配:
sort(List<T>)集合类型的泛型方法不适用于参数 (List<capture#14-of ? extends IAcao>)。推断的类型capture#14-of ? extends IAcao不是有界参数的有效替代品<T extends Comparable<? super T>>