Java使用反射操作數(shù)組示例
本文實(shí)例講述了Java使用反射操作數(shù)組。分享給大家供大家參考,具體如下:
一 實(shí)戰(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)用實(shí)戰(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 運(yùn)行
E:\Java\瘋狂java講義\codes\18\18.4>java ArrayTest1
瘋狂Java講義
輕量級Java EE企業(yè)應(yīng)用實(shí)戰(zhàn)
二 實(shí)戰(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ù)組,
因此可以認(rèn)為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)用實(shí)戰(zhàn)"
});
// 獲取arrObj數(shù)組中index為3的元素,該元素應(yīng)該是一維數(shù)組。
Object anArr = Array.get(arrObj, 3);
Array.set(anArr , 8 , "瘋狂Android講義");
// 將arr強(qiáng)制類型轉(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 運(yùn)行
E:\Java\瘋狂java講義\codes\18\18.4>java ArrayTest2
瘋狂Android講義
瘋狂Java講義
輕量級Java EE企業(yè)應(yīng)用實(shí)戰(zhàn)
更多java相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Java面向?qū)ο蟪绦蛟O(shè)計入門與進(jìn)階教程》、《Java數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Java操作DOM節(jié)點(diǎn)技巧總結(jié)》、《Java文件與目錄操作技巧匯總》和《Java緩存操作技巧匯總》
希望本文所述對大家java程序設(shè)計有所幫助。
相關(guān)文章
netty服務(wù)端處理請求聯(lián)合pipeline分析
這篇文章主要為大家介紹了netty服務(wù)端處理請求聯(lián)合pipeline示例分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-04-04
SpringBoot整合Shiro框架,實(shí)現(xiàn)用戶權(quán)限管理
Apache Shiro是一個強(qiáng)大且易用的Java安全框架,執(zhí)行身份驗證、授權(quán)、密碼和會話管理。作為一款安全框架Shiro的設(shè)計相當(dāng)巧妙。Shiro的應(yīng)用不依賴任何容器,它不僅可以在JavaEE下使用,還可以應(yīng)用在JavaSE環(huán)境中。2021-06-06
java實(shí)現(xiàn)的二級聯(lián)動菜單效果
這篇文章主要介紹了java實(shí)現(xiàn)的二級聯(lián)動菜單效果,結(jié)合實(shí)例形式分析了java前臺頁面布局及與后臺交互構(gòu)造聯(lián)動菜單的相關(guān)技巧,需要的朋友可以參考下2016-08-08
Springboot Thymeleaf字符串對象實(shí)例解析
這篇文章主要介紹了Springboot Thymeleaf字符串對象實(shí)例解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2007-09-09
Java實(shí)現(xiàn)在Word指定位置插入分頁符
在Word插入分頁符可以在指定段落后插入,也可以在特定文本位置處插入。本文將以Java代碼來操作以上兩種文檔分頁需求,需要的可以參考一下2022-04-04
Java MongoDB數(shù)據(jù)庫連接方法梳理
MongoDB作為一種介于關(guān)系型數(shù)據(jù)庫和非關(guān)系型數(shù)據(jù)庫之間的產(chǎn)品,它可以提供可擴(kuò)展的高性能的數(shù)據(jù)存儲解決方案,近些年來受到了開發(fā)者的喜愛2022-08-08

