下载此文档

Java中String类型的参数传递问题的解析.doc


文档分类:IT计算机 | 页数:约6页 举报非法文档有奖
1/6
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/6 下载此文档
文档列表 文档介绍
写代码最重要的就是实践,不经过反复试验而得出的说辞只能说是凭空遐想罢了。所以,在本文中首先以一个简单示例来抛出核心话题:lassStringAsParamOfMethodDemo{publicstaticvoidmain(String[]args){StringAsParamOfMethodDemoStringAsParamOfMethodDemo=newStringAsParamOfMethodDemo();();}privatevoidtestA(){StringoriginalStr="original";("TestABegin:");("TheouterString:"+originalStr);simpleChangeString(originalStr);("TheouterStringafterinnerchange:"+originalStr)("TestAEnd.");();}publicvoidsimpleChangeString(Stringoriginal){original=original+"ischanged!";("ThechangedinnerString:"+original);}这段代码的逻辑是这样的:先赋值一个String类型的局部变量,然后把这个变量作为参数送进一个方法中,在这个方法中改变该变量的值。编译运行之后,发现输出结果是这样的:TestABegin:TheouterString:originalThechangedinnerString:originalischanged!TheouterStringafterinnerchange:。好了,这个示例的逻辑和运行结果都展示清楚了,接下来我们来对这个小程序进行分析。在这之前我们先来回顾下Java中所谓的“传值”和“传引用”问题。二、Java中的“传值”和“传引用”问题许多初学Java的程序员都在这个问题上有所思索,那是因为这是所谓的“C语言的传值和传指针问题”在Java语言上同类表现。最后得出的结论是:在Java中,当基本类型作为参数传入方法时,无论该参数在方法内怎样被改变,外部的变量原型总是不变的,代码类似上面的示例:intnumber=0;changeNumber(number){number++};//(number);//这时number依然为0这就叫做“值传递”,即方法操作的是参数变量(也就是原型变量的一个值的拷贝)改变的也只是原型变量的一个拷贝而已,而非变量本身。所以变量原型并不会随之改变。但当方法传入的参数为非基本类型时(也就是说是一个对象类型的变量),方法改变参数变量的同时变量原型也会随之改变,代码同样类似上面的示例:StringBufferstrBuf=newStringBuffe

Java中String类型的参数传递问题的解析 来自淘豆网m.daumloan.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数6
  • 收藏数0 收藏
  • 顶次数0
  • 上传人tmm958758
  • 文件大小24 KB
  • 时间2019-05-18