\ String 是 引用类型,除了 你说的那几个基本类型外 都是 引用类型拷贝 的时候也是引用的地址,不光拷贝 使用的时候 都是先找地址。去api看看,可以看到public final class Stringextends Objectimplements SerializableString 是个类。数据类型,值传递和引用传递有什么区别,String是什么传递? 你学过C或者C++吗?这两个概念是从C/C++延续过来的,就类似于C里面的值传递和指针传递。在java中除了基本类型(Integer/Float/Double等)和String类的对象外,所有的类对象引用都是引用传递,也就是传递的对象地址。所谓值传递就是传递的值的拷贝,而不是原来的值,比如public static void main(String[]args){int a=10;int b=20;int c=add(a,b);System.out.println(\"a=\"+a+\",b=\"+b+\",c=\"+c);}private static int add(int a,int b){a=20;b=30;return a+b;}输出:a=10,b=20,c=50这就是所谓值传递,在被调方法中改变参数值不会影响主调方法中定义的变量的值如果你将a、b定义为Student类的对象,然后在add方法中改变参数里面的值,那么主调方法main中的a、b变量将跟着发生改变,就是所谓引用传递C# 关于引用类型传递的问题,怎么会这样? 原来是学C++的吧?Net的引用和C++不怎么一样,C++的引用是对象的别名,而.Net的引用只是一种隐式的指针。比如,string s=new string();s是指向新创建的这个string对象的一个引用string p=s;把s赋给p,那么p就指向和s一样的地址p=null;把空引用赋给p,那么p以后就指向null,但s并不会因此改变所以啊,.Net的引用其实就是隐式的指针,这么理解就可以了接着回过来看你的例子,只要修改一下就能达到你想要的效果加上ref关键字static public void K(ref A i){i=null;}调用的时候也是A.K(ref l);l.Q(ref l);
随机阅读
- 银川附属医院和银川医学院附属医院是一家医院吗?附近有什么小区,急急!!要详细,多点。谢谢 江南水乡 景园-b区
- 羚锐牌骨质增生一贴灵要用几个疗程,一个疗
- 我美丽的家乡那拉提草原 400字 美丽的那拉提草原作文
- 施耐德贴牌 施奈德镜头怎么样?
- 犄角旮旯意思 犄角旮旯什么意思?
- 毛里西奥 阿泽维多 阿尔维斯 0238是什么地方的区号
- “春风又绿江南岸,明月何时照我还”中的“绿”字让我们想到什么? 赏析春风又绿江南岸明月何时照我还的妙处
- 牛肉馅汆丸子怎么调馅 牛肉馅汆丸子剩下的馅冻一个月变深色还能吃吗?
- 《如果有机会,再来一次》作文 假如给我再来一次的机会作文
- 英雄联盟,刚出的未来战士,怎么那么垃圾啊,我用都打不死人,还没爆发,我去,买了真后悔! 英雄联盟 未来战士故事
- ai里边界框遇到未知错误 Ai怎样显示或隐藏边缘
- 永乐里到魏公村 明清时期的时间?
- smt贴片快速换线 SMT中设备工程师换线时的工作流程
- 女性性激素六项单位 女性性激素六项检查
- 天然气硫元素占比 天然气中,硫元素的存在形式是什么?是什么物质?
- 小龙大肉面和路子铺 南京现在有什么网红面馆?
- 女孩子回答,请问你们会咬自己的男朋友吗?如果会,为什么要咬呢? 男友会要求你们咬吗
- 有一个陌生人一直加我好友 QQ总有陌生人加我好友是怎么回事
- 宋楼镇赵沟村 夏津宋楼侯堤驴肉有问题
- 朋友送了件瓷器,是国瓷永丰源的好吗? 国瓷永丰源在国内排名