《資料結構與演算法》之泛型 使用介面型別表示泛型

2021-08-29 14:01:33 字數 668 閱讀 1644

如:考慮再由一些項組成的陣列中找出最大項的問題。基本的**是型別無關的,但是它需要一種能力來比較任意兩個物件。因此,不能直接找出object的陣列中的最大元素——我們需要更多的資訊。最簡單的方法就是找出comparable的陣列中的最大元。要確定順序,可以使用compareto方法,它對所有的comparable都必然是現成可用的。

1、只有實現comparable介面的那些物件才能夠作為comparable陣列的元素被傳遞。僅有compareto方法但並未宣稱實現comparable介面的物件不是comparable的,它不具備必需的is-a關係。

2、如果comparable陣列有兩個不相容的物件(例如:string和shape),那麼compareto方法將丟擲異常classcastexception。

3、基本型別不能作為comparable傳遞,但是包裝類可以,因為它們實現了comparable介面。

4、介面究竟是不是標準的庫介面倒不是必需的。

public class findmaxdemo ;

system.out.println(findmax(st)); }

public static comparable findmax(comparable arr)

} return arr[maxindex];

}}

泛型結構使用大全(泛型類 泛型介面)

1 泛型類可能有多個引數,此時應將多個引數一起放到尖括號內,比如 2 泛型類的構造器如下 public genericclass 錯誤示例 public genericclass 3 例項化後,操作原來泛型位置的結構必須與指定的泛型型別一致。4 泛型不同的引用不能互相賦值。儘管在編譯時arrayli...

資料結構之java泛型

雖然該賬號已經申請很長一段時間,每次找資料,csdn上的小夥伴所提供的資訊總能幫我大忙 時間久了,感覺自己只是乙個消費者,並沒有做出一點點貢獻。最近,腦子一熱,買了乙個資料結構與演算法分析,第一小節看的就是泛型,回頭想想,好像大學裡學的演算法都是以這種泛型方法展示的,廢話不多說,自己總結一丟丟。1....

C 泛型類與介面

1 泛型類 using system using system.collections using system.collections.generic 泛型類 class ttt class program p1.name console.writeline p2 p2.name 2 泛型介面 u...