android object數組賦值_Java對象數組定義與用法詳解

本文實例講述了Java對象數組定義與用法。分享給大家供大家參考,具體如下:

所謂的對象數組,就是指包含了一組相關的對象,但是在對象數組的使用中一定要清楚一點:數組一定要先開辟空間,但是因為其是引用數據類型,所以數組里面的每一個對象都是null值,則在使用的時候數組中的每一個對象必須分別進行實例化操作。

對象數組的聲明

先定義,再開辟空間

類名稱 對象數組名[] = null;

對象數組名 = new 類名稱[長度];

定義并開辟數組

類名稱 對象數組名[] = new 類名稱[長度];

在聲明對象數組后 ,必須對每個數組成員進行實例化話 才能直接使用,否則報空指針異常!

動態初始化

先聲明數組,然后對數組中的每一個對象必須分別進行實例化操作。

public class Test {

public static void main(String[] args) {

Person[] ps = new Person[3]; // 聲明一個對象數組,里面有三個對象

System.out.println("---------------數組聲明后-------------------");

for (int x = 0; x < ps.length; x++) {

System.out.print(ps[x] + " "); // 循環輸出

}

// 創建3個人,并實例化

Person p1 = new Person("jerry", 18);

Person p2 = new Person("tom", 20);

Person p3 = new Person("rose", 25);

ps[0] = p1; // 實例化第一個元素

ps[1] = p2; // 實例化第二個元素

ps[2] =p3; // 實例化第三個元素

System.out.println("\n---------------對象實例化-------------------");

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) { // 通過構造方法設置內容

this.name = name; // 為姓名賦值

this.age = age; // 為年齡賦值

}

@Override

public String toString() {

return "Person [name=" + name + ", age=" + age + "]";

}

}

執行結果如下:

---------------數組聲明后-------------------

null?null?null

---------------對象實例化-------------------

Person [name=jerry, age=18] Person [name=tom, age=20] Person [name=rose, age=25]

下面是對上面對象數組初始化操作的內存圖解:

靜態初始化

類名稱 對象數組名[] = new 類名稱[] {對象,對象......};

public class Test {

public static void main(String[] args) {

// 聲明一個對象數組,里面有三個對象,使用靜態初始化方式

Person ps[] = { new Person("jerry", 18), new Person("tom", 20),

new Person("rose", 25)};

System.out.println("---------------數組輸出-------------------");

for (int x = 0; x < ps.length; x++) {

System.out.print(ps[x] + " "); // 循環輸出

}

}

}

執行結果如下:

---------------數組輸出-------------------

Person [name=jerry, age=18] Person [name=tom, age=20] Person [name=rose, age=25]

希望本文所述對大家java程序設計有所幫助。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/453806.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/453806.shtml
英文地址,請注明出處:http://en.pswp.cn/news/453806.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Fiddler抓取https證書問題

正常的使用方法 Fiddler 抓包工具總結 大部分問題的解決方案 fiddler4在win7抓取https的配置整理 像我臉一樣黑的解決方案 Fiddler https 證書問題 可能的解釋&#xff1a; Fiddler自帶兩個cert engine&#xff0c;一個是makecert&#xff0c;一個是CertEnroll&#xff0c;可…

深度學習之目標檢測:R-CNN、Fast R-CNN、Faster R-CNN

object detection 就是在給定的圖片中精確找到物體所在位置&#xff0c;并標注出物體的類別。object detection 要解決的問題就是物體在哪里&#xff0c;是什么這整個流程的問題。然而&#xff0c;這個問題不是容易解決的&#xff0c;物體的尺寸變化范圍很大&#xff0c;擺放物…

九江機器人餐廳_機器人精通200道佳肴 九江學院來了多位機器廚神

九江學院來了多位“機器廚神”●炒菜機一次能炒近10公斤菜&#xff0c;三四分鐘就能出鍋&#xff0c;味道也不錯●煮飯機從淘米到煮熟全部自動機械化操作&#xff0c;效率提高了不少電腦開啟&#xff0c;設定好程序&#xff0c;機器就可以自動運轉&#xff0c;快速炒出美味可口…

深度學習之邊框回歸(Bounding Box Regression)

從rcnn&#xff0c; fast rcnn, faster rcnn, yolo, r-fcn, ssd&#xff0c;到cvpr的yolo9000。這些paper中損失函數都包含了邊框回歸&#xff0c;除了rcnn詳細介紹了&#xff0c;其他的paper都是一筆帶過&#xff0c;或者直接引用rcnn就把損失函數寫出來了。前三條網上解釋比較…

2018 年,React 將獨占web前端框架鰲頭?

相比 Angular 和 Vue&#xff0c; React 是 2017 年的主要 JS 框架&#xff0c;尤其是 React Native 以前所未有的速度提升自己。 Stateofjs 2017前端框架調查結果 相比較 2016 年的調查結果 所以 &#xff0c;1 年過去了&#xff0c;Vue.js 顯然在前端框架中占據了領導地位&am…

ffmpeg的編譯(for x86,for arm)安裝及使用(網絡資料整理)

ffmpeg編譯及使用 1 ffmpeg介紹 ffmpeg是音視頻的分離&#xff0c;轉換&#xff0c;編碼解碼及流媒體的完全解決方案&#xff0c;其中最重要的就是libavcodec庫。它被mplayer或者xine使用作為解碼器。還有&#xff0c;國內比較流行的播放器影音風暴或MyMPC的后端ffdshow也是使…

python中other_Python other

最新項目django tinymcewrapper允許您輕松地將tinymce小部件添加到其他應用程序管理表單中&#xff0c;而無需修改其他應用程序。此包Python名稱&#xff1a;djang ...2020-12-24已閱讀: n次##這是什么&#xff1f;愚蠢的服務器可以幫助您模擬一些尚未實現的http服務&#xff0…

python 第三方模塊之 pandas 操作 excel

python 解析 excel 對比 包版本xls讀xlsx讀xls寫xlsx寫備注xlrd1.1.0&#xff08;2017年8月22日&#xff09;√√2.0 之后不支持xlsxxlwt1.3.0&#xff08;2017年8月22日&#xff09;√openpyxl2.6.2&#xff08;2019年3月29日&#xff09;√√XlsxWriter1.2.1&#xff08;201…

JMeter響應斷言詳解

響應斷言 &#xff1a;對服務器的響應進行斷言校驗 &#xff08;1&#xff09;應用范圍: main sample and sub sample&#xff0c; main sample only &#xff0c; sub-sample only &#xff0c; jmeter variable    關于應用范圍&#xff0c;我們大多數勾選“main sample on…

YUV / RGB 格式及快速轉換

YUV是指亮度參量和色度參量分開表示的像素格式&#xff0c;而這樣分開的好處就是不但可以避免相互干擾&#xff0c;還可以降低色度的采樣率而不會對圖像質量影響太大。 YUV是一個比較籠統地說法&#xff0c;針對它的具體排列方式&#xff0c;可以分為很多種具體的格式。轉載一篇…

交換機分布緩存_交換機網絡嗅探方法 如何欺騙交換機緩存

嗅探(sniff)&#xff0c;就是竊聽網絡上流經的數據包&#xff0c;而數據包里面一般會包含很多重要的私隱信息&#xff0c;如&#xff1a;你正在訪問什么網站&#xff0c;你的郵箱密碼是多少&#xff0c;你在和哪個MM聊QQ等等......而很多攻擊方式(如著名的會話劫持)都是建立在嗅…

深度學習之 SSD(Single Shot MultiBox Detector)

目標檢測近年來已經取得了很重要的進展&#xff0c;主流的算法主要分為兩個類型&#xff1a; &#xff08;1&#xff09;two-stage方法&#xff0c;如R-CNN系算法&#xff0c;其主要思路是先通過啟發式方法&#xff08;selective search&#xff09;或者CNN網絡&#xff08;RP…

短時程突觸可塑性(short-term synaptic plasticity)

介紹神經元的突觸可塑性一般被認為是大腦學習與記憶的分子生物學機制&#xff0c;它是指突觸傳遞效率增強或減弱的變化現象。若這種變化只持續數十毫秒到幾分&#xff0c;便稱之為短時程突觸可塑性&#xff0c;其中效率增強與減弱分別叫做短時程增強&#xff08;short-term enh…

windows平臺下vlc編譯

轉自:http://jeremiah.blog.51cto.com/539865/114190Jeremiah剛剛工作幾個月&#xff0c;參與的第一個項目是與視頻監控有關&#xff0c;分配給我的任務就是用開源的vlc做一個自己的播放器。對于開源項目來說&#xff0c;搭建起編譯環境是第一步也是最重要的一步。Jeremiah在歷…

python xgboost安裝_win7 64 python2 xgboost安裝

綜述&#xff1a;安裝Python3 環境下的xgboost 可以通過pip install &#xff0c; 在網址中下載對應版本&#xff1a; http://www.lfd.uci.edu/~gohlke/pythonlibs/#xgboost 來進行安裝。但Python2在該網址下并沒有相應的包&#xff0c;所以要下載xgboost源代碼 然后編譯。很麻…

深度學習之卷積神經網絡 AlexNet

AlexNet 是 2012年ILSVRC 比賽冠軍&#xff0c;遠超第二名的CNN&#xff0c;比LeNet更深&#xff0c;用多層小卷積疊加來替換單個的大卷積&#xff0c;結構如下圖所示。 ?? 結構 預處理 原始圖片&#xff1a;256?256?3256*256*3256?256?3 圖像處理&#xff1a; 1.隨機…

jstl處理欄目與子欄目_芬頓氧化法廢水處理工程技術規范(征求意見稿)

日前&#xff0c;生態環境部印發《芬頓氧化法廢水處理工程技術規范(征求意見稿)》&#xff0c;詳情如下&#xff1a;各有關單位&#xff1a;為貫徹《中華人民共和國環境保護法》和《中華人民共和國水污染防治法》等法律法規&#xff0c;防治環境污染&#xff0c;改善環境質量&a…

深度學習之卷積神經網絡 ZF Net

ZFNet出自論文《 Visualizing and Understanding Convolutional Networks》&#xff0c;作者Matthew D. Zeiler和Rob Fergus——顯然ZFNet是以兩位作者名字的首字母命名的。ZFNet通常被認為是ILSVRC 2013的冠軍方法&#xff0c;但實際上ZFNet排在第3名&#xff0c;前兩名分別是…

SIP與RTP綜合應用5-RTP解包過程

RTP接收部分比較簡單(不用考慮jitterbuffer等)&#xff0c;先從這里入手。 其實主要就3步&#xff1a; 1 創建一個udp&#xff0c;監聽一個端口&#xff0c;比如5200。 2 收到RTP包&#xff0c;送到解包程序&#xff0c;繼續收第 二個。 3 收齊一幀后&#xff0c;或保存文件&am…

JavaScript eval() 函數,計算某個字符串,并執行其中的的 JavaScript 代碼。

JavaScript eval() 函數&#xff0c;計算某個字符串&#xff0c;并執行其中的的 JavaScript 代碼。 適合用于計算器的計算&#xff0c;等。 例子&#xff1a; eval("x10;y20;document.write(x*y)") document.write(eval("22")) var x10 document.write(eva…