面試題 14泛型

2021-10-20 06:01:42 字數 925 閱讀 7956

概念:泛型是乙個未知的資料型別

e e:element 元素 t t:type 型別等

使用泛型和不使用泛型的區別

不使用泛型

好處:集合不使用泛型,預設型別是object型別,可以儲存任意型別

弊端:不安全,會引發型別轉換異常

使用泛型

好處:避免的轉換的麻煩,儲存什麼型別,取出什麼型別;把執行期異常提醒到編譯器

弊端:泛型是什麼型別只能儲存什麼型別

泛型的定義和使用

泛型類

定義格式:修飾符 class 類名《泛型》

class

arraylist

public e get

(int index)

}

泛型方法

定義格式:修飾符 《泛型》 返回值型別 方法名(引數(使用泛型))

public

void

fx(m m)

泛型介面

第一種方法:定義介面的實現類,實現介面,指定介面的泛型

第二種方法:定義介面的實現類,介面是什麼型別,指定實現類也是相同的介面,類跟著介面走,相當於確定了乙個泛型類 泛型的萬用字元

泛型的萬用字元:?,代表任意資料型別 使用方式:不能通過建立物件使用;只能作為方法的引數使用 泛型的限定 泛型上限限定:? extend

e,表示使用的泛型只能是e類的子類或者本身 泛型下限限定:? super e,表示使用的泛型只能是e類的父類或者本身

面試題整理 什麼是泛型

泛型 就是一種不確定的資料型別。比如,arraylist e就是泛型。這種不確定的資料型別需要在使用這個類的時候才能夠確定出來。泛型可以省略,如果省略,預設泛型是object型別。泛型的好處 1.省略了強轉的 2.可以把執行時的問題提前到編譯時期。public class demo01generic...

面試題14 剪繩子

長度為n的繩子,剪為m段,求最大乘積 思路 第一刀後 f n f i f n i 從下到上計算,4可被分為兩個2段 5可分為乙個2乙個3 int maxproductaftercutting int length int max 0 product 1 1 product 2 2 product 3...

面試題14 剪繩子

面試題14 剪繩子 題目 給你一根長度為n繩子,請把繩子剪成m段 m n都是整數,n 1並且m 1 每段的繩子的長度記為k 0 k 1 k m k 0 k 1 k m 可能的最大乘 積是多少?例如當繩子的長度是8時,我們把它剪成長度分別為2 3 3的三段,此 時得到最大的乘積18。思路 動態規劃為了...