Java怎么在函数内改变传入的值

发表于:2016-5-11 10:35

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:奇小东    来源:51Testing软件测试网采编

public class TestInt
{
public int aa(int i)
{
return i+4;
}
public static void main(String [] args)
{
int i=3;
aa(i);
System.out.println(i);
}
}
  主函数main()这个静态方法无法
  引用非静态方法 aa(int)的。
  函数调用时,参数传递的方式主要有两种: 值传递和引用传递。
  Java使用的是值传递。值传递是把变量的值、常数或常量传递给参数。而引用传递,是把变量的所在内存中的地址传递给参数,参数通过地址找到变量的值。
  无论是在C、c++还是java中传值是无法改变实参的值的,
  就比如要交换两个整型数的值。
  java中得通过传引用的方式改变实参的值。
  所以可以传通过数组这种引用方式来改变实参的值!
public class TestInt {
public static void aa(int[] i) {
i[0] += 4;
}
public static void main(String [] args) {
int[] i= {3};
aa(i);
System.out.println(i[0]);
}
}
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号