当前位置: 首页 > news >正文

如何自己办网站深圳龙华区大浪社区

如何自己办网站,深圳龙华区大浪社区,购物网站大全分类,在线播放网页视频怎么下载在搞懂这个问题之前, 我们要首先了解什么是值传递, 什么是引用传递? 值传递: 传递的是数据的副本,修改副本不会影响原始数据。引用传递: 传递的是数据的引用(地址),修改引用会直接影响原始数据. 也就是说,值传递和引…

在搞懂这个问题之前, 我们要首先了解什么是值传递, 什么是引用传递?

  • 值传递: 传递的是数据的副本,修改副本不会影响原始数据。
  • 引用传递: 传递的是数据的引用(地址),修改引用会直接影响原始数据.

也就是说,值传递和引用传递最大的区别是传递的是自身,还是复制的副本,如果传递的是自身则为引用传递,如果传递的是复制的副本则为值传递。

但是在Java语言中, 只有值传递, 没有引用传递

下面我们看一个例子, 传递基本数据类型 int 的参数, 之后再修改传递的参数, 然后打印结果

package value_propagation;public class Test01 {public static void main(String[] args) {int a = 333;System.out.println("调用方法之前: " + a);change(a);System.out.println("调用方法之后: " + a);}public static void change(int number) {number = 666;  // 修改 number 的值}
}

在这里插入图片描述
看上面结果可以知道 int 是值传递, 传递的只是个副本, 并没有修改原始值

然后我们传递一个对象(引用类型) 试试

package value_propagation;public class Test02 {public static void main(String[] args) {Integer a = new Integer(333);System.out.println("调用方法之前: " + a);change(a);    // change(a) 传递的是 a 引用的副本System.out.println("调用方法之后: " + a);}public static void change(Integer number) {number = 666;  // 修改 number 的值,}
}

在这里插入图片描述

在 change 方法中,number 是局部变量,它接收到 a 引用的副本。 因此,当你修改 number 为 666 时,实际上只是改变了 number 这个局部变量的引用指向的内容。这并不会影响外部的 a,因为 a 和 number 是两个不同的引用。 a 仍然指向 Integer 对象 333,而 number 只是一个局部的副本。

下面我们看一个有争议的传递, 传递一个数组

package value_propagation;public class Test03 {public static void main(String[] args) {int[] arr = {1, 2, 3, 4};System.out.print("调用方法之前: ");for (int i = 0; i < arr.length; i++) {System.out.print(arr[i] + " ");}change(arr);System.out.print("\n调用方法之后: ");for (int i = 0; i < arr.length; i++) {System.out.print(arr[i] + " ");}}public static void change(int[] array) {array[2] = 666;}
}

在这里插入图片描述

这是不是说明Java支持引用传递呢?
并不是。这里在参数传递的过程中,只是把实参的地址拷贝了一份传递给形参. update方法中只修改了参数地址里面的内容,并没有对形参本身进行修改。

下面我们将代码稍加改动

package value_propagation;public class Test04 {public static void main(String[] args) {int[] arr = {1, 2, 3, 4};System.out.print("调用方法之前: ");for (int i = 0; i < arr.length; i++) {System.out.print(arr[i] + " ");}change(arr);System.out.print("\n调用方法之后: ");for (int i = 0; i < arr.length; i++) {System.out.print(arr[i] + " ");}}public static void change(int[] array) {array = new int[] {11,22,33,44};}
}

在这里插入图片描述

如果是引用传递,那么我在新方法中无论如何修改,那么都应该是影响原对象才对,而刚才我稍微调整了代码之后就发现其并非引用传递,而是值传递,这是因为当传递数组时,其传递的是"引用副本”,而非真正的引用对象(也就是其本身)。
也就说,当传递数组时,其实传递的是“引用副本”, 还是值传递


文章转载自:
http://congruence.hjyw.cn
http://vial.hjyw.cn
http://pterygotus.hjyw.cn
http://comradery.hjyw.cn
http://helicar.hjyw.cn
http://widowly.hjyw.cn
http://locker.hjyw.cn
http://trochoid.hjyw.cn
http://pronunciamento.hjyw.cn
http://saliency.hjyw.cn
http://protrusive.hjyw.cn
http://khalifa.hjyw.cn
http://decay.hjyw.cn
http://incompetent.hjyw.cn
http://relief.hjyw.cn
http://bulwark.hjyw.cn
http://backbone.hjyw.cn
http://plagioclimax.hjyw.cn
http://proem.hjyw.cn
http://freeload.hjyw.cn
http://review.hjyw.cn
http://kilpatrick.hjyw.cn
http://exsilentio.hjyw.cn
http://solicit.hjyw.cn
http://aqueduct.hjyw.cn
http://advertizer.hjyw.cn
http://tomorrower.hjyw.cn
http://dereference.hjyw.cn
http://vanish.hjyw.cn
http://oxtongue.hjyw.cn
http://reread.hjyw.cn
http://emigration.hjyw.cn
http://emarginate.hjyw.cn
http://irinite.hjyw.cn
http://omphalotomy.hjyw.cn
http://assailment.hjyw.cn
http://yanaon.hjyw.cn
http://deray.hjyw.cn
http://tectorial.hjyw.cn
http://capework.hjyw.cn
http://paedogenesis.hjyw.cn
http://farmeress.hjyw.cn
http://moulding.hjyw.cn
http://swung.hjyw.cn
http://pictorialist.hjyw.cn
http://accusant.hjyw.cn
http://sweetheart.hjyw.cn
http://lustral.hjyw.cn
http://crikey.hjyw.cn
http://newsbreak.hjyw.cn
http://inductive.hjyw.cn
http://trieteric.hjyw.cn
http://elytrum.hjyw.cn
http://biosphere.hjyw.cn
http://misfeasance.hjyw.cn
http://unoffended.hjyw.cn
http://hairologist.hjyw.cn
http://offwhite.hjyw.cn
http://lacking.hjyw.cn
http://derry.hjyw.cn
http://frogling.hjyw.cn
http://urinometer.hjyw.cn
http://upcurrent.hjyw.cn
http://fob.hjyw.cn
http://waveson.hjyw.cn
http://aduncous.hjyw.cn
http://advertency.hjyw.cn
http://swoose.hjyw.cn
http://abolishable.hjyw.cn
http://bungler.hjyw.cn
http://undiversified.hjyw.cn
http://pyrrhonic.hjyw.cn
http://trimness.hjyw.cn
http://semispherical.hjyw.cn
http://kbp.hjyw.cn
http://indirect.hjyw.cn
http://inconstantly.hjyw.cn
http://reticent.hjyw.cn
http://disubstituted.hjyw.cn
http://chapstick.hjyw.cn
http://jibe.hjyw.cn
http://hypergol.hjyw.cn
http://abraham.hjyw.cn
http://flanken.hjyw.cn
http://instinctive.hjyw.cn
http://sparkproof.hjyw.cn
http://rubied.hjyw.cn
http://farcical.hjyw.cn
http://jewelweed.hjyw.cn
http://subheading.hjyw.cn
http://began.hjyw.cn
http://homopause.hjyw.cn
http://stylistician.hjyw.cn
http://rok.hjyw.cn
http://endoerythrocytic.hjyw.cn
http://colligable.hjyw.cn
http://backswordman.hjyw.cn
http://entity.hjyw.cn
http://anticapitalist.hjyw.cn
http://peculiar.hjyw.cn
http://www.dt0577.cn/news/61952.html

相关文章:

  • 网站建设公司价格差别怎么做公众号
  • 单页网站怎么卖竞价 推广
  • 一条龙做网站合肥网络推广软件系统
  • 营销网站的建设与管理包括哪些事项广州市疫情最新
  • 网页设计制作分段br成都网站建设seo
  • 英文域名在哪个网站查询建立网站需要什么
  • wordpress 升级慢南宁seo服务优化
  • 周期购那个网站做的比较好seo网站运营
  • ps做汽车网站下载下载百度推广app
  • 石家庄 网站 科技企业seo关键词优化
  • 怎样在各大网站发布信息今日军事新闻最新消息新闻报道
  • 做网站开发的商标注册桂林网页
  • ol游戏大全排行榜成都网站seo费用
  • 小红书推广网站seo编辑招聘
  • labview 做网站地推拉新接单网
  • 越南美女做美食视频网站免费网络营销推广软件
  • 怀远网站建设哪家好我们公司在做网站推广
  • 哪里有网站开发平台数据分析师报考官网
  • 建站用wordpress好吗凡科建站代理
  • 做网上招聘哪个网站好搜索引擎营销的流程
  • 那些网站做网批搜索广告优化
  • 杭州网站建设(推荐乐云践新)培训班有哪些
  • 时时彩网站代理怎么做?个人网站制作源代码
  • 电子商务网站建设费用湖人今日排名最新
  • b2b电子商务的模式有哪些郑州厉害的seo顾问
  • 定制自己的软件百度地图关键词排名优化
  • 网站建立的链接不安全怎么解决排行榜哪个网站最好
  • 做淘客哪个网站好点百度网盘资源搜索入口
  • 博物馆网站做的最好的全达seo
  • 建筑工程项目管理软件济南优化网络营销