中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

通過java的反射編寫泛型數組

發布時間:2020-07-06 04:17:31 來源:網絡 閱讀:399 作者:沙漏半杯 欄目:編程語言

通過java的反射編寫泛型數組


第一種方法:會拋出一個ClassCastException異常,因為這段代碼返回的是對象數組(Object[])類型,不能轉換成對應的數組類型。因此不提倡使用這種方法


public static Object[] badCopyOf(Object[] a, int newLength) {

? // 創建一個新的對象數組

? Object[] newArray = new Object[newLength];

? // 拷貝數組

? System.arraycopy(a, 0, newArray, 0, Math.min(a.length, newLength));

? return newArray;


?}


?


第二種方法:不需要聲明為對象型數組,整型數組 int[]可以被轉換成Object ,但是不能轉換成對象型數組


public static Object goodCopyOf(Object a, int newLength) {

? // 獲取類對象

? Class cl = a.getClass();

? // 判斷類的是不是一個數組對象

? if (!cl.isArray())

? ?return null;

? // 獲取類對象的類型

? Class componentType = cl.getComponentType();

? // 獲取數組的長度

? int length = Array.getLength(a);


? Object newArray = Array.newInstance(componentType, newLength);

? // 復制數組

? System.arraycopy(a, 0, newArray, 0, Math.min(length, newLength));


? return newArray;

?}


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

祁连县| 白城市| 龙游县| 高邮市| 栾川县| 民权县| 霍林郭勒市| 寿宁县| 石屏县| 农安县| 石棉县| 精河县| 昭平县| 西城区| 隆回县| 天祝| 五台县| 北流市| 开江县| 林芝县| 黄龙县| 东乌| 台北市| 分宜县| 浦城县| 彰武县| 虎林市| 望都县| 永平县| 舟曲县| 渑池县| 宜阳县| 西和县| 韶山市| 客服| 雷波县| 江都市| 盐津县| 响水县| 巍山| 平武县|