List的toArray方法的使用方法以及強制轉換時的報錯問題
都知道List等集合轉為陣列有toArray這個方法,但是今天就踩到這個坑了。在進行轉換之後需要轉換型別,直接強轉了。最後報錯
於是檢視資料,toArray這個方法返回的是一個Object[]陣列,是不能進行轉換的。
如果強轉會報錯:java.lang.ClassCastException:
[Ljava.lang.Object; cannot be cast to .......(......為轉換的型別)
要轉換型別使用toArray(t[] a)這個方法,後面就是需要轉換成型別的陣列。
toArray方法有個特點就是不會對之前的List進行引用,只是複製了一份,原資料的副本,所以可以放心更改而不會影響原來List裡面的資料
所以,要轉換型別,應該要使用的是第二種形式來轉換資料。
toArray(T[] a)這個方法返回一個類T的陣列。這個陣列包含了List內全部的元素。
這個方法的特點就是,如果陣列a的長度能夠裝下整個List的資料的時候,所有資料會放入到陣列a當中。
如果陣列a的長度不夠長,那麼就會返回一個數組。
也就是說使用的形式有兩種:
List<Integer> test=new ArrayList<Integer>();for(int i=0;i<5;i++){
test.add(i);
}
Integer[] t=new Integer[test.size()];
test.toArray(t);//第一種
Integer[] t3=new Integer[1];
Integer[] t2=test.toArray(t3);//第二種
如上,t和t2都是返回的陣列。
轉換之前要確認List裡面的元素是否可以被轉成你希望的型別,如果型別不符合那就白忙活了
相關推薦
List的toArray方法的使用方法以及強制轉換時的報錯問題
都知道List等集合轉為陣列有toArray這個方法,但是今天就踩到這個坑了。在進行轉換之後需要轉換型別,直接強轉了。最後報錯 於是檢視資料,toArray這個方法返回的是一個Object[]陣列,是
yii2 類似mongoose schema ,對mongodb 進行型別定義,以及強制轉換
安裝完mongodb的外掛,就可以使用mongodb了,但是,在插入和更新mongodb的資訊的時候,active record 會因為沒有型別, 不能對欄位自動的強制轉換型別,下面是強制轉換型別 common\extensions\mongodb\IActiveRec
pdf2swf 轉換時報錯。This file is too complex to render- SWF only supports 65536 shapes at once
在使用swftools轉換pdf 到swf的時候報錯, 查詢 baidai 了一下。 有如下說明: if the pdf contains too many images / shapes, pdf2swf will fail with this error : ERROR Thisfileistooc
如何修改WAMP中mysql默認空密碼 以及修改時報錯的處理方法
處理方法 5.7 http 成了 不能 免密 使用 tro com WAMP安裝好後,mysql密碼是為空的,那麽要如何修改呢?其實很簡單,通過幾條指令就行了,下面我就一步步來操作。 首先,通過WAMP打開mysql控制臺。 提示輸入密碼,因為現在是空,所以
使用git安裝gocode時報錯以及解決方法
最近開始自學golang,使用eclipse和goclipse外掛搭建了golang的開發環境,前期的外掛下載和安裝都很順利,但是到了安裝gocode(這是程式碼補全工具,對於我這個初學者來說很是必需)時遇到了問題。報錯資訊和解決方法如下: Q:cannot downloa
android NDK開發中,用Cygwin調試本地代碼時報錯“Another debug session running,Use --force to kill it”原因及解決的方法
能夠 att cati kill 時報 andro 使用 deb gdb調試 在使用ndk-gdb調試的時候。運行$NDK/ndk-gdb --verbose報錯“Another debug session running,Use --force to kil
VS2012 Nuget 安裝 AutoMapper時報錯的解決方法
for standard lin war syn test studio stand 解決方法 VS2012 在.net 4.0下安裝AutoMapper時,會報以下錯誤: “AutoMapper”已擁有為“Standard.Library”定義的依賴項。 ‘AutoMap
VS2017 添加引用時報錯未能正確加載ReferenceManagerPackage包的解決方法
gacutil log 添加引用 目錄 安裝 evel shel nag dll 最近對安裝完visual studio 2017 ,在添加引用總是提示 未能加載包ReferenceManagerPackage。 這個問題一直沒有解決,最近在網上發現了解決方案: 1、打開V
特殊符號存入mysql數據庫時報錯:Incorrect string value: 'xF0x9Fx98x84xF0x9F的解決方法
height blog quest back 輸入 數據庫字段 lan post value 問題描述:從新浪微博抓取消息保存到MySQL數據中,對應數據庫字段為varchar,字符編碼utf-8。部分插入成功,部分插入失敗,報錯如標題。在網上查詢,有人說是編碼問題,建議修
vue項目引入第三方js插件,單個js文件引入成功,使用該插件方法時報錯
question play 文件引入 clas ons 不定 AS npm安裝 col 1、引入第三方js文件,npm安裝不了 2、控制臺顯示引入成功 3、在methods下使用 圖片看不清請看下面代碼 updateTime() { set
Oracle使用sys登錄時報錯ORA-28009解決方法
操作 ont pan PE 成功 nec con mil spa 情況一:使用sqlplus登錄: 正常輸入用戶名的口令,就會報錯,因為SYS是在數據庫之外的超級管理員,所以我們在登錄的時候 要在輸入口令:口令+as sysdba(比如:123456 as sy
python--接口測試--xlwt模塊使用時報錯情況解決方法
python xlwt python xlwt報錯 xlwt模塊使用報錯 xlwt模塊導入報錯 我們做接口測試時經常用到xlrd和xlwt兩個模塊,這裏的xlrd還比較好弄直接安裝就好, 但是xlwt安裝會失敗,網上自己下載xlwt3模塊後然後通過python setup.py install
eclipse中部署web項目時報錯java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener的解決方法
except 自動生成 text margin spa font 應用 sem gin 解決方案: 1.右鍵點擊項目--選擇Properties,選擇Deployment Assembly,在右邊點擊Add按鈕,在彈出的窗口中選擇Java Build Path Entrie
Visual studio 2017添加引用時報錯未能正確加載ReferenceManagerPackage包的解決方法
博客 CA reserve shell. html 引用 cache ide manager vs2017添加引用時報錯未能正確加載“ReferenceManagerPackage”包。 - AusonSir - 博客園https://www.cnb
關於在地址池下綁定IP時報錯The IP address‘s status is error解決方法
key src gb2 c99 blob 電腦 oss ont ror 我使用華為交換機為一家企業裏電腦綁定IP地址時報:The IP address's status is error的錯誤。如下圖: 這時我覺得可能這個IP地址已經被DHCP服務給分配到
從Vuex中取出陣列賦值給新的陣列,新陣列push時報錯的解決方法
如下所示: ? 1 Uncaught Error: [vuex] Do not mutat
從Vuex中取出數組賦值給新的數組,新數組push時報錯的解決方法
syn 調度系統 scrip vip tor ood 教育 java初學者 str 如下所示: ? 1 Uncaught Error: [vuex] Do not mutate vuex store state outside mutation hand
Android studio 執行時報錯Do you want to uninstall the existing application?的解決方法
轉載自:https://www.cnblogs.com/1124hui/p/6609689.html (解決方法)Android studio 執行時報錯Do you want to uninstall the existing application?的解決方法 在And
Java操作某方法時報錯:java.lang.NoSuchMethodError
引入 項目 報錯 不同 錯誤 class文件 其他 http 刪除重復 Caused by: java.lang.NoSuchMethodError: org.apache.poi.xssf.usermodel.XSSFWorkbook.close()V 一開始以為代碼寫
在LisvView的cell中呼叫TouchableOpacity的onPress方法時報錯
在LisvView的cell中呼叫TouchableOpacity的onPress方法時報錯 在LisvView的cell中呼叫TouchableOpacity的onPress方法時報錯的問題。 錯誤提示(見下圖):該方法不是一個function, 這個有點蒙逼了(明明是function