導航:首頁 > 編程語言 > java封裝數組

java封裝數組

發布時間:2023-06-05 10:49:06

1. java封裝屬性 數組

這段代碼也是醉了,你存入list應該是一個對象Person,

而你給一組數組賦值我也是沒搞懂你的意思,

你這樣寫代碼能存入list集合的只是一個Person對象,而你給對象欄位賦值的語句就只有p.name = s.next();p.pingjun = (rr / (a.length - 1)) + "";,只有2個屬性付了值,其他的沒有賦值是null;

一個構造器給Person的數組賦值?一個長度20的字元空數組,然後你給w數組賦值,那麼你這樣子賦值你以為可以影響到Person的值?w[i] = u + "";這句代碼,與Person對象沒半毛錢關系,對象引用都沒有怎麼賦值,

你最後列印的是Person對象的欄位,而你存入一個空數組,然後把string類型欄位的原始屬性給一個數組,Person(String r[]) {
r[1] = this.yuwen;
r[2] = this.shuxve;
r[3] = this.wuli;
r[4] = this.waiyu;
r[5] = this.huaxve;

}

這有啥用,我很好奇你這個r數組也不是類中的欄位,你給他付了null的值,你給他傳入的是長度20的數組,後面還有15個長度呢,不管這個,關鍵是這個數組啥用也沒有除了浪費內存


下面這段代碼中list.add(p);,你把Person 對象存入list,此時的Person 對象被賦值的就只有2個欄位,你給w,r數組的值無法影響到Person 對象,且這個方法執行完畢後,也會被清理掉因為沒有被引用到

這個時候可以回答你的問題了,為什麼你輸入的分數顯示都是null:

因為他都沒被賦值到Person 的成員變數上面,沒被賦值的成員變數的String值是null,容易你列印Person 未被賦值的成員變數的值,就是null;

String r[] = new String[a.length - 2];

String w[] = new String[20];
int rr = 0;
Person p = new Person(w);

p.name = s.next();

for (int i = 1; i < a.length - 1; i++) {
int u = s.nextInt();
w[i] = u + "";
r[i - 1] = u + "";
rr += u;
}
p.pingjun = (rr / (a.length - 1)) + "";
list.add(p);

閱讀全文

與java封裝數組相關的資料

熱點內容
電腦運行命令里的記錄能刪嗎 瀏覽:697
linuxwss 瀏覽:848
一個軟體需要登錄伺服器地址 瀏覽:923
哪裡有解壓程序 瀏覽:299
java靜態方法內存 瀏覽:545
我的世界ec伺服器如何帶vip 瀏覽:737
什麼是由解析器域名和伺服器構成 瀏覽:414
自動識別電影信息源碼 瀏覽:849
柱筋箍筋加密區怎麼算 瀏覽:48
鋼筋中加密15倍是什麼意思 瀏覽:366
esc加密演算法 瀏覽:518
linux運行exe命令 瀏覽:124
一級建造師管理pdf 瀏覽:720
如何更改伺服器登錄賬號 瀏覽:317
看pdf文件軟體 瀏覽:183
android恢復模式 瀏覽:808
生命令人憂 瀏覽:597
魔獸搬磚怎麼選擇伺服器 瀏覽:771
程序員求伯君圖片 瀏覽:827
安卓手機如何打開mark2文件 瀏覽:662