Java中對(duì)象數(shù)組的使用方法詳解
本文實(shí)例講述了Java中對(duì)象數(shù)組的使用方法。分享給大家供大家參考,具體如下:
一 點(diǎn)睛
對(duì)象可以用數(shù)組來存放,通過下面兩個(gè)步驟來實(shí)現(xiàn)。
1 聲明以類為數(shù)據(jù)類型的數(shù)組變量,并用new
分配內(nèi)存空間給數(shù)組。
2 用new
產(chǎn)生新的對(duì)象,并分配內(nèi)存空間給它。
下面介紹4種方式來定義對(duì)象數(shù)組
方式一:靜態(tài)方式
Person p1[] = { new Person(), new Person(), new Person() };
方式二:動(dòng)態(tài)初始化化
Person p2[]; p2 = new Person[3]; for(int i=0;i<p2.length;i++) { p2[i] = new Person(); }
方式三:數(shù)組元素指向所定義的對(duì)象
Person p3[]; p3 = new Person[3]; p3[0] = new Person(); p3[1] = new Person(); p3[2] = new Person();
方式四:創(chuàng)建對(duì)象數(shù)組,并分配對(duì)象空間
Person p4[] = new Person[3]; p3[0] = new Person(); p3[1] = new Person(); p3[2] = new Person();
二 對(duì)象數(shù)組實(shí)戰(zhàn)
1 代碼
class Person { String name = "小明"; int age = 5; public Person() { } // 構(gòu)造函數(shù),創(chuàng)建新對(duì)象時(shí)調(diào)用 public Person( String name, int age ) { this.name = name ; this.age = age ; } public String talk() { return "我是:" + this.name + ",今年:" + this.age + "歲"; } } public class ObjectArray { public static void main(String[] args) { // 靜態(tài)方式 Person p1[] = { new Person(), new Person(), new Person() }; // 動(dòng)態(tài)方式 Person p2[]; p2 = new Person[3]; for(int i=0;i<p2.length;i++) { p2[i] = new Person(); } // 數(shù)組元素指向所定義的對(duì)象 Person p3[]; p3 = new Person[3]; p3[0] = new Person(); p3[1] = new Person(); p3[2] = new Person(); // 創(chuàng)建對(duì)象數(shù)組,并分配內(nèi)存空間 Person p4[] = new Person[3]; p4[0] = new Person(); p4[1] = new Person(); p4[2] = new Person(); for( int i = 0; i <p4.length; ++i ) { System.out.println( p4[i].talk( ) ) ; } Person p[] = { new Person( "張三", 25 ), new Person( "李四", 30 ), new Person( "王五", 35 ) }; for( int i = 0; i <p.length; ++i ) { System.out.println( p[i].talk( ) ) ; } } }
2 運(yùn)行
我是:小明,今年:5歲
我是:小明,今年:5歲
我是:小明,今年:5歲
我是:張三,今年:25歲
我是:李四,今年:30歲
我是:王五,今年:35歲
三 代碼圖解
Person per[]; per = new Person[3]; per[0] = new Person(); per[1] = new Person(); per[2] = new Person();
參考
http://chabaoo.cn/article/168857.htm
http://chabaoo.cn/article/168862.htm
四 實(shí)戰(zhàn)
1 代碼
public class Test { public static void main(String[] args) { Person[] ps = new Person[3]; // 聲明一個(gè)對(duì)象數(shù)組,里面有三個(gè)對(duì)象 System.out.println("---------------數(shù)組聲明后-------------------"); for (int x = 0; x < ps.length; x++) { System.out.print(ps[x] + " "); // 循環(huán)輸出 } // 創(chuàng)建3個(gè)人,并實(shí)例化 Person p1 = new Person("jerry", 18); Person p2 = new Person("tom", 20); Person p3 = new Person("rose", 25); ps[0] = p1; // 實(shí)例化第一個(gè)元素 ps[1] = p2; // 實(shí)例化第二個(gè)元素 ps[2] =p3; // 實(shí)例化第三個(gè)元素 System.out.println("\n---------------對(duì)象實(shí)例化-------------------"); for (int x = 0; x < ps.length; x++) { System.out.print(ps[x] + " "); } } } class Person { private String name; // 姓名屬性 private int age; // 年齡屬性 public Person(String name, int age) { // 通過構(gòu)造方法設(shè)置內(nèi)容 this.name = name; // 為姓名賦值 this.age = age; // 為年齡賦值 } @Override public String toString() { return "Person [name=" + name + ", age=" + age + "]"; } }
2 運(yùn)行
---------------數(shù)組聲明后-------------------
null null null
---------------對(duì)象實(shí)例化-------------------
Person@6d06d69c Person@7852e922 Person@4e25154f
3 圖解
更多關(guān)于java相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Java數(shù)組操作技巧總結(jié)》、《Java字符與字符串操作技巧總結(jié)》、《Java數(shù)學(xué)運(yùn)算技巧總結(jié)》、《Java數(shù)據(jù)結(jié)構(gòu)與算法教程》及《Java操作DOM節(jié)點(diǎn)技巧總結(jié)》
希望本文所述對(duì)大家java程序設(shè)計(jì)有所幫助。
相關(guān)文章
Java 中實(shí)現(xiàn)隨機(jī)無重復(fù)數(shù)字的方法
為了更好地理解這個(gè)題意,我們先來看下具體內(nèi)容:生成一個(gè)1-100 的隨機(jī)數(shù)組,但數(shù)組中的數(shù)字不能重復(fù),即位置是隨機(jī)的,但數(shù)組元素不能重復(fù)2013-03-03SpringSecurity自定義AuthenticationProvider無法@Autowire的解決
這篇文章主要介紹了SpringSecurity自定義AuthenticationProvider無法@Autowire的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-12-12java web實(shí)現(xiàn)用戶權(quán)限管理
這篇文章主要介紹了java web實(shí)現(xiàn)用戶權(quán)限管理,設(shè)計(jì)并實(shí)現(xiàn)一套簡(jiǎn)單的權(quán)限管理功能,感興趣的小伙伴們可以參考一下2015-11-11java String、StringBuilder和StringBuffer的區(qū)別詳解
這篇文章主要介紹了java String、StringBuilder和StringBuffer的區(qū)別詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-01-01將Java項(xiàng)目打包成可執(zhí)行的jar包
這篇文章主要介紹了將Java項(xiàng)目打包成可執(zhí)行的jar包,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-06-06