Java泛型比較大小


2021-10-04

22:53:45

在寫泛型鏈表類的方法實現的時候,需要對泛型進行大小比較,如何實現?

public K minVal() {
    if (this.head == null){
        return null;
    }
    Node<K> node = this.head;
    K min = node.val;
    do{
        if(min.compareTo(node.val)>0) {
            min = node.val;
        }
        node = node.next;
    }while(node != null);
    return min
}

此外,必須在泛型聲明語句中,讓泛型繼承Comparable接口!是繼承接口,而不是實現接口!關鍵字為extends!

class ListChaineeSimple<K extends Comparable> implements IEnsembleDynamique<K>, ListeChainee<K>{...}

新建Integer數組,進行鏈表初始化,調用minVal方法測試。IDEA沒有報錯,編譯通過,結果正確!

原理:Comparable內部比較器接口的compareTo方法在Integer包裝類中進行了實現

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM