泛型,佇列優化

2021-09-01 17:03:10 字數 1199 閱讀 6249

[size=xx-large]一 泛型[/size]

[size=large]1.為什麼使用泛型:[/size]

要用乙個型別接收多個類時如:

int x=2,y=3;

float x=3.0,y=5.6;

string x="aa",y="bb";

可以使用object接受任何型別的資料(發生向上轉型),但由於object可接受任何資料型別,

當接受的和輸出的型別不符時就會出錯,因此使用泛型。

[size=large]2.訪問許可權[/size] class 類名《泛型識別符號...>;

訪問許可權 泛型識別符號 構造方法([泛型型別 引數名]){};

訪問許可權 返回值型別 方法名(泛型識別符號 變數名){};

}[size=large]3.例項化該類時[/size]

類名《具體指定的型別》 物件名=new 類名《具體指定的型別》();

[size=xx-large]二 優化佇列[/size]

[size=large]1.使用陣列時,長度是固定的,有時不夠,有時浪費------>因此使用佇列

2.但使用佇列時有存在效能問題如下:[/size]

public class stlist

}

[size=large]3.這樣的話沒加乙個元素都要將原陣列長度加1,新增新元素,然後將原陣列的資料放入新陣列------>導致效能降低[/size]

為了解決這一問題引入全域性變數

int initcount=10;//原陣列初始長度

int increase=20;//新陣列在原陣列上的增幅

int count=0;//用來記數

private object srca=new object[initcount];

public void add(e e)else

}

[size=large]4.這樣做是效能提高,但操作死板。因此可以使用構造器將initcount,increase的值傳入,這樣使用者可以自

定義陣列原始長度和增幅。[/size]

public stlist()

public stlist(int initcount)

public stlist(int initcount,int increase)

泛型 泛型類 泛型方法 泛型擦除

1 是什麼?一種允許我們在不確定引數型別時候使用的型別。例如我不知道a方法應該會傳string還是int,我就用個泛型先佔坑。2 為什麼要用泛型?泛型可以在編譯期自動確定具體型別,檢查型別是否匹配,可以提高 的重用率,減少冗餘編碼。3 泛型與object的區別?像上面說的我不知道方法a的引數型別,其...

泛型 (2)泛型類 泛型方法 泛型介面

一 泛型類 定義person類 package cn.itcast.p2.bean public class person implements comparable public person string name,int age public int compareto person p ov...

泛型 泛型介面

泛型介面 介面上要宣告泛型,介面的抽象方法要接這個泛型。實現類的宣告也要寫具體的泛型實參。注意 泛型實參要用引用資料型別。基本資料型別不行。如果一定要使用基本資料型別那麼得使用基本資料型別的包裝類。如果實現類中的型別不確定,也想帶泛型,並且和介面中的一致。那麼在實現類中宣告,將在此處宣告的 類的泛型...