使用反射增加陣列的大小

2021-06-26 14:45:38 字數 710 閱讀 3503

下面方法是用來擴充套件任意型別的陣列,而不僅僅是物件陣列。該方法主要是通過反射機制實現的。

增加物件陣列大小一般分為以幾步:

(1)首先,獲取原始陣列的類物件;

(2)其次,確認它是乙個陣列;

(3)再次,使用class類的getcomponenttype方法確定陣列對應的型別;

(4)最後,按需求建立目標物件,並將原始陣列中的物件拷貝到目標陣列中。

/**返回的陣列型別是指定的型別**/

private static object goodarraycopy(object a)

下面的方法也是增加陣列大小,其傳入的引數是object,返回的物件也是object,但是返回值的型別不再是原始的型別,而是object。如果原始的的陣列為int型別,最後返回的object陣列將無法轉為int型別陣列。所以,用方法來增加陣列的大小是不可靠的。

/**返回陣列型別是object 而不是指定的型別**/

private static object badarraycopy(object a)

如果只是希望擴大陣列,直接利用arrays類的copyof方法即可。

/** 僅僅希望擴大陣列 **/

private static object increasearr(object a)

增加陣列下標 陣列操作之增刪改查

js中有6種資料型別 5種基本資料型別 number,string,boolean,undefined,null 1種複雜資料型別 object 陣列 array 這一複雜資料型別在前端開發過程中是比較常見的一種,因此陣列有很多的操作方法。在程式語言的學習中,除了基礎必會的hello world入門...

Mysql 增加資料的幾種方式

mysql 增加資料的幾種方式 set insert into tab name set col 1 value 1 一次性插入多個 insert into tab name col 1,col 2 values value 1a value 1b value 2a value 2b 插入時有主鍵衝...

JDBCTemplate獲取增加資料後的主鍵

spring提供的jdbc操作支援,在對mysql資料庫進行資料增加時獲取增加的主鍵id,會出現錯誤 preparedstatementcallback generated keys not requested.you need to specify statement.return generat...