第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

泛型(T extends Comparable<T>) 數(shù)組怎么定義啊

泛型(T extends Comparable<T>) 數(shù)組怎么定義啊

慕村225694 2018-11-13 20:50:13
public class Array<T>{private T[] arr;    public Array(){         arr = (T[]) new Object[10];     }}這樣執(zhí)行可以 ,當(dāng)T extends Comparable<T>時(shí)就出錯(cuò)應(yīng)該怎么定義啊
查看完整描述

1 回答

?
肥皂起泡泡

TA貢獻(xiàn)1829條經(jīng)驗(yàn) 獲得超6個(gè)贊

===更新
不知道你是否是希望仿照實(shí)現(xiàn)一個(gè)ArrayList,我寫了個(gè)及其簡(jiǎn)陋的,其中用Object[]數(shù)組來存儲(chǔ),取出時(shí)再轉(zhuǎn)換成T。

public class Array<T extends Comparable<T>> {    
    private Object[] arr;    public static void main(String[] args) {
        Array<A> arr = new Array<A>();
        arr.set(0, new A(24));
        arr.set(1, new A(25));
        System.out.println(arr.get(1));
    }    public Array(){
        arr = new Object[10];
    }    public void set(int index, T ele) {
        arr[index] = ele;
    }    public T get(int index) {        return (T) arr[index];
    }
}class A implements Comparable<A>{    private int age;    public A(int age) {this.age = age;}    public A() {}    public int getAge() {        return this.age;
    }    public void setAge(int age) {        this.age = age;
    }    public int compareTo(A a) {        return this.age - a.getAge();
    }
    
}

ArrayList的源碼中,它也是用Object數(shù)組來存儲(chǔ)元素的:
transient Object[] elementData;

===原答案
Comparable是接口,應(yīng)該用implements;
另外,你上面的Array是個(gè)class嗎還是?報(bào)了什么錯(cuò)?


查看完整回答
反對(duì) 回復(fù) 2018-11-13
  • 1 回答
  • 0 關(guān)注
  • 1360 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)