溫馨提示×

溫馨提示×

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

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

怎么在Java中利用反射對數(shù)組進行操作

發(fā)布時間:2021-03-24 16:35:04 來源:億速云 閱讀:156 作者:Leah 欄目:編程語言

這期內(nèi)容當中小編將會給大家?guī)碛嘘P(guān)怎么在Java中利用反射對數(shù)組進行操作,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

一 實戰(zhàn)

1 代碼

import java.lang.reflect.*;
public class ArrayTest1
{
  public static void main(String args[])
  {
    try
    {
      // 創(chuàng)建一個元素類型為String ,長度為10的數(shù)組
      Object arr = Array.newInstance(String.class, 10);
      // 依次為arr數(shù)組中index為5、6的元素賦值
      Array.set(arr, 5, "瘋狂Java講義");
      Array.set(arr, 6, "輕量級Java EE企業(yè)應(yīng)用實戰(zhàn)");
      // 依次取出arr數(shù)組中index為5、6的元素的值
      Object book1 = Array.get(arr , 5);
      Object book2 = Array.get(arr , 6);
      // 輸出arr數(shù)組中index為5、6的元素
      System.out.println(book1);
      System.out.println(book2);
    }
    catch (Throwable e)
    {
      System.err.println(e);
    }
  }
}

2 運行

E:\Java\瘋狂java講義\codes\18\18.4>java ArrayTest1
瘋狂Java講義
輕量級Java EE企業(yè)應(yīng)用實戰(zhàn)

二 實戰(zhàn)

1 代碼

import java.lang.reflect.*;
public class ArrayTest2
{
  public static void main(String args[])
  {
    /*
     創(chuàng)建一個三維數(shù)組。
     根據(jù)前面介紹數(shù)組時講的:三維數(shù)組也是一維數(shù)組,
     是數(shù)組元素是二維數(shù)組的一維數(shù)組,
     因此可以認為arr是長度為3的一維數(shù)組
    */
    Object arr = Array.newInstance(String.class, 3, 4, 10);
    // 獲取arr數(shù)組中index為2的元素,該元素應(yīng)該是二維數(shù)組
    Object arrObj = Array.get(arr, 2);
    // 使用Array為二維數(shù)組的數(shù)組元素賦值。二維數(shù)組的數(shù)組元素是一維數(shù)組,
    // 所以傳入Array的set()方法的第三個參數(shù)是一維數(shù)組。
    Array.set(arrObj , 2 , new String[]
    {
      "瘋狂Java講義",
      "輕量級Java EE企業(yè)應(yīng)用實戰(zhàn)"
    });
    // 獲取arrObj數(shù)組中index為3的元素,該元素應(yīng)該是一維數(shù)組。
    Object anArr = Array.get(arrObj, 3);
    Array.set(anArr , 8 , "瘋狂Android講義");
    // 將arr強制類型轉(zhuǎn)換為三維數(shù)組
    String[][][] cast = (String[][][])arr;
    // 獲取cast三維數(shù)組中指定元素的值
    System.out.println(cast[2][3][8]);
    System.out.println(cast[2][2][0]);
    System.out.println(cast[2][2][1]);
  }
}

2 運行

E:\Java\瘋狂java講義\codes\18\18.4>java ArrayTest2
瘋狂Android講義
瘋狂Java講義
輕量級Java EE企業(yè)應(yīng)用實戰(zhàn)

上述就是小編為大家分享的怎么在Java中利用反射對數(shù)組進行操作了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI