亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

求助大神們,Java問題

求助大神們,Java問題

TGP 2017-06-30 11:06:57
我的問題是:我在for循環外創建的student對象s1,用循環進行賦值 為什么 兩次賦值s1的哈希碼是一樣,但s1.id的哈希碼卻不一樣???
查看完整描述

3 回答

?
小_六_

TA貢獻1條經驗 獲得超0個贊

因為在循環前student的對象已經創建,已經分配好了內存地址,對象是地址引用,在循環中只是對這個對象的屬性進行修改 ,所以s1的內存地址是不變的,只是s1對應內存地址中的實際內容變了;更改id屬性時,要新建一個屬性對應的內存地址,因為有新對象生成,所以對應的地址就變了; --新手見解,錯了勿怪~~

查看完整回答
反對 回復 2017-07-01
?
Demo丶yk

TA貢獻1條經驗 獲得超0個贊

這么說吧,你全程只有一個s1對象,你說地址相不相同?id是屬性,每次循環賦值后怎么可能相同?你不用循環這種方式創建試試,你就懂了。

查看完整回答
反對 回復 2017-06-30
?
愛吃豆角的蟲子

TA貢獻22條經驗 獲得超6個贊

id(學號)不一樣,哈希碼怎么會是一樣? 對象的哈希碼一樣,是因為對象沒變化啊,從你 Student s1 = new Student();?

這個創建之后它的物理地址就沒有變化,除非你在for 循環里 再new 一個 (s1 = new Student();)

查看完整回答
反對 回復 2017-06-30
?
MR帽子先生

TA貢獻245條經驗 獲得超106個贊

rgba(0,0,0,0.6):IE8及以下版本的瀏覽器并不識別這種寫法

需要使用ie的filter來解決這個問題

<div?style="height:100px;width:100px;rgba(0,?0,?0,0.6);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#99000000,endColorstr=#99000000);"></div>

?希望對你有幫助,祝你學習愉快。

如果決絕問題,務必采納我的回答。


查看完整回答
反對 回復 2017-06-30
  • 3 回答
  • 1 關注
  • 2689 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號