社区
Java SE
帖子详情
一个关于赋值的问题
zsjin0208
2005-09-11 07:49:42
class Ben{
char c;
}
class Bena{
static void f(ben y){
y.c='a';
}
public static void main(String[]args){
ben x=new ben();
x.c='z';
f(x);
System.out.println(x.c);
}
}
结果是a为什么不是z?f(x)应该是把x的值赋给y,对象x的值应该是是不变的啊,可是为什么这是错的呢?
...全文
53
6
打赏
收藏
一个关于赋值的问题
class Ben{ char c; } class Bena{ static void f(ben y){ y.c='a'; } public static void main(String[]args){ ben x=new ben(); x.c='z'; f(x); System.out.println(x.c); } } 结果是a为什么不是z?f(x)应该是把x的值赋给y,对象x的值应该是是不变的啊,可是为什么这是错的呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
zsjin0208
2005-09-11
打赏
举报
回复
非常感谢各位
zsjin0208
2005-09-11
打赏
举报
回复
是不是这样子的,在y.c=x.c的时候,x.c是不连带z的,所以它也没有改写y.c的值,而是它自己也指向了y.c的值。(更正一个错误,ben应全部为Ben,我在复制上来的时候弄错了)
lqql
2005-09-11
打赏
举报
回复
应该是a啊!
congliu
2005-09-11
打赏
举报
回复
当然是a
从object继承的对象(即是除了int,float等基本类型外),都是引用调用的,不是按值调用
zdnetchina
2005-09-11
打赏
举报
回复
看看static这里
static void f(ben y){
y.c='a';
}
奇伢
2005-09-11
打赏
举报
回复
void f(ben y)
如果传递的参数是固定类型的话会被复制一份,但是如果是对象则是传递的是个引用。
就是上面x.c在x.c='z',这时候是z的,但是后来引用被传递到方法里有改写了,所以是啊。
微服务系列第四季-运算符及程序控制语句
微服务应用是分布式开发的主要手段,它很好的解决了高并发等电商平台的
问题
。微服务系列课程是以Java语言为基础,以SpringCloud+SpringBoot为核心,结合Spring、SpringMVC及MyBatis,通过游戏案例、电商案例,以极简的方式,带领入门的朋友们快速上手微服务开发。全部案例源码分享给学习的朋友,案例采用敏捷开发管理模式,让朋友们在每
一个
阶段,有着游戏过关一样的学习体验。 第四季主要是给大家介绍一下Java运算符及流程控制语句。内容包括:算术运算符、逻辑运算符、关系运算符、位运算符、
赋值
运算符、分支语句、多路分支。
Python中关于列表list的
赋值
问题
Python中关于列表list的
赋值
问题
本文主要记录在列表list的
赋值
过程中遇到的
问题
,并对列表的拷贝相关知识进行汇总。 目录Python中关于列表list的
赋值
问题
0.
问题
起源1.列表list
赋值
方法2.浅拷贝(shallow copy)3.深拷贝4.关于拷贝操作的提醒5.参考资料 0.
问题
起源 本文的原因是因为在使用list的直接
赋值
b=a时,得到的结果与预期不同,后来才发现直接使用等于号=对列表进行
赋值
会产生一系列的
问题
,于是将
赋值
、浅拷贝、深拷贝三者之间的区别进行记录。 1.列表
java
一个
List给另
一个
list
赋值
问题
java
一个
List给另
一个
list
赋值
问题
当我们想要仅仅复制
一个
List的值到另
一个
List时 你也许会这样做: List<String> list1 = new ArrayList<>(); List<String> list1 = new ArrayList<>(); list1=list2 我们来测试一下结果 List<...
reg型变量怎么
赋值
_两个always块同时对
一个
reg类型变量
赋值
的
问题
两个always块同时对
一个
reg类型变量
赋值
的
问题
[复制链接]两个always块同时对
一个
reg类型变量
赋值
的
问题
问题
描述:pps信号为秒脉冲信号(GPS授时模块中的同步秒脉冲),每个一秒钟给fpga发送
一个
信号,稳定精度为20ns左右,而且占空比可调(与该
问题
无关)。
一个
rom 由m4k块产生,大小为8bit位宽,64words,即地址总线位宽为6位宽,事先存放好编辑好的数据。rom中的数为0...
关于数组
赋值
的
问题
但是在结构体中,将
一个
结构体变量的内容
赋值
给
一个
结构体变量这是行得通的,因为此时被
赋值
的是变量。相当于把
一个
结构体变量的内容完全拷贝一份放到另
一个
结构体变量。数组刚开始一直认为不能被直接
赋值
,但是当用到结构体之后发现,结构体里面的数组类型变量竟然可以直接被
赋值
。首先,
赋值
就是将一段内存中的内容拷贝到另一段内存当中。在C语言中
赋值
要求,等号左边必须是变量。当我们试图对数组进行
赋值
,数组名代表首地址,而他是
一个
常量,将常量
赋值
给
一个
常量显然是不行的。是可以成功将a的内容
赋值
给b。
Java SE
62,614
社区成员
307,327
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章