集合與泛型
coursesToSelect是集合,將string添加入集合,會自動忽略類型,當作object處理,那為什么添加一個字符串的時候會有ClassToSelect異常呢?
如果說coursesToSelect已經(jīng)規(guī)定了可存放的類型,是泛型的話,那泛型是不需要進行類型轉(zhuǎn)換的呀?
coursesToSelect是集合,將string添加入集合,會自動忽略類型,當作object處理,那為什么添加一個字符串的時候會有ClassToSelect異常呢?
如果說coursesToSelect已經(jīng)規(guī)定了可存放的類型,是泛型的話,那泛型是不需要進行類型轉(zhuǎn)換的呀?
2017-09-01
舉報
2017-09-28
添加字符串進去的時候是沒問題的,只是后來在取出集合中的元素時,需要將集合中的元素強制類型轉(zhuǎn)換為course,這個時候原來的字符串雖然現(xiàn)在也是Object類,但是沒辦法被轉(zhuǎn)換成course,所以才報錯
2017-09-01
這個異常是在循環(huán)遍歷的時候拋出的,添加進去是沒有問題的。
規(guī)定泛型的話,規(guī)定的是<Course>的話,那List里存放的就是Course類型的引用不是Object了,取出來的時候也是Course類型的引用,不需要強制轉(zhuǎn)換了。。
當然規(guī)定泛型的話,規(guī)定的是<Course>的話,無法add其他類型的對象,編譯的時候就會出錯