摘要:笔试题的和题目如下传参的两种方式值传递传递的是值针对基本数据类型,如传递一个整型数值。实际上,按值传递在方法调用方法中,参数只是实际参数的一份拷贝。引用传递传递的是对象的引用针对对象,即传递的是对象的地址。
【笔试题】 Java的call by value和call by reference 题目如下: Java传参的两种方式
call by value(值传递):传递的是值(针对基本数据类型),如传递一个整型数值。实际上,按值传递在方法调用方法中,参数只是实际参数的一份拷贝。
call by reference(引用传递):传递的是对象的引用(针对对象),即传递的是对象的地址。实际上,引用按传递时候会产生一份新的引用拷贝,新旧两份引用同时指向同一个地址。
代码示例public class TestJavaCallBy { // 测试值传递 public static void testCallByValue(int value) { value *= 10; } // 测试引用传递 public static void testCallByReference(StringBuilder sb) { sb.append(" - " + ZonedDateTime.now()); } public static void main(String[] args) { // 测试值变量 int param = 1; // 测试引用对象 StringBuilder sb = new StringBuilder("666"); // 测试 System.out.println(param); testCallByValue(param); System.out.println(param); System.out.println(sb.toString()); testCallByReference(sb); System.out.println(sb.toString()); } } 控制台输出结果 1 // 结果仍为1,因为参数传递的是实参的一份拷贝,对实参不造成影响 1 666 // 传递的是引用的拷贝,新旧两个引用指向同一个对象(地址),因此append操作是作用在该对象上 666 - 2019-03-16T01:25:57.933038500+08:00[Asia/Shanghai]那么就能得出一下结论:
call by value不会改变实参的值
call by reference不能改变实参的参考地址
call by reference能改变实参的内容
那么这道题的答案就是这样。文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/73719.html
摘要:众所周知,中参数是按值传递的。先大概介绍按值传参基本类型基本类型的参数传递比较简单,示例代码的值复制给了函数内部的局部变量所以在函数内部改变的值并不会影响外部的值。 众所周知,JavaScript中参数是按值传递的。与访问变量不同,基本类型和引用类型的参数在传递时都如同变量的复制。 但是我们在使用引用类型的参数传递时,经常会发现在函数内改变引用类型参数(如对象)会在函数外反映出来,这种...
摘要:标签前端作者更多文章个人网站 Learning Notes - Understanding the Weird Parts of JavaScript 标签 : 前端 JavaScript [TOC] The learning notes of the MOOC JavaScript: Understanding the Weird Parts on Udemy,including...
摘要:按引用传递时,函数的形参接收实参的隐式引用,而不再是副本。探究值的传递方式的基本类型,是按值传递的。但这样是否说明的对象是按引用传递的呢我们再看下面的例子仍然是并未被修改为如果是按引用传递,修改形参的值,应该影响到实参才对。 最近遇到个有趣的问题:JS中的值是按值传递,还是按引用传递呢? 在分析这个问题之前,我们需了解什么是按值传递(call by value),什么是按引用传递(ca...
摘要:接下来分析几个常见的实现方式。再哈希法再哈希法,就是出现冲突后采用其他的哈希函数计算,直到不再冲突为止。,其中为不同的哈希函数。 由表及里,循序渐进,请往下看。随手点赞是对作者最大的鼓励!^0^。 什么是哈希表 引用:严蔚敏 《数据结构(C语言版)》中的内容 showImg(https://segmentfault.com/img/bVZlmE?w=800&h=364); 哈希表就是 ...
阅读 1135·2021-11-11 16:54
阅读 835·2021-10-19 11:44
阅读 1305·2021-09-22 15:18
阅读 2396·2019-08-29 16:26
阅读 2914·2019-08-29 13:57
阅读 3066·2019-08-26 13:32
阅读 1056·2019-08-26 11:58
阅读 2296·2019-08-26 10:37