我现在有这样的一个类,这个类里有一个存放两个祖先节点的List,这个List用来存放父亲节点和母亲节点。然后还有一个用来存放夫妻节点的节点类型的变量。首先我实例化节点1,然后调用节点1创建夫妻节点的方法(这个方法会创建一个节点2作为节点1的夫妻节点)。然后我对节点1调用创建祖先的方法,这时候会创建节点1的父节点、母节点,添加到节点1的list中。接下来对节点2调用创建祖先的方法,这是后同上,也会创建父节点和母节点添加到节点2的list中。
以上是我觉得正常的过程,现在不正常的出现了,在我调用节点1的创建祖先方法时,当我添加一个节点时,在节点2的list中也会出现相同的节点。。。。这是为什么啊,我知道list是引用传递,但我这里是两个完全不同的list,这是什么情况。。。。。求大神们给个科学的解答,最好能再给个解决方案,谢谢各位了
关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
已采纳
C#中List容器添加元素的问题
收起
- 写回答
- 好问题 0 提建议
- 关注问题
- 微信扫一扫点击复制链接分享
- 邀请回答
- 编辑 收藏 删除 结题
- 收藏 举报
2条回答 默认 最新
- 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
threenewbee 2017-07-18 07:54关注贴出你的代码看下。作为元素的对象,是引用类型,修改其中一个,其它也会变,因为指向一个对象。你得拷贝一个再添加。
本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏举报微信扫一扫点击复制链接分享编辑预览轻敲空格完成输入- 显示为
- 卡片
- 标题
- 链接
评论按下Enter换行,Ctrl+Enter发表内容
编辑
预览
轻敲空格完成输入
- 显示为
- 卡片
- 标题
- 链接
报告相同问题?
提交
- 2017-06-06 22:46回答 1 已采纳 两种写法本质上是一样,用哪种方式看个人习惯。 题目中如果按第二种方法,代码如下: ``` tableLayoutPanel1.SetRow(Form1, 0); //设置F
- 2018-05-14 01:01回答 4 已采纳 ListItem的value多增加年龄值,用|分隔开就可以一次取数据了 ``` string[] stuNameList=stu.Select(x=>x.stuName).ToAr
- 2016-10-23 20:00回答 3 已采纳 thrDemPoint p1 = new thrDemPoint(1.0f, 0.0f, 0.0f, 0.0f); thrDemPoints.Add(p1); 下面这行是对的
- 2021-06-25 16:42《C#实现的圆形打包算法在Windows通用项目中的应用》 在编程领域,尤其是在图形处理、界面设计或者数据可视化中,圆形打包算法是一项重要的技术。它主要用于高效地在二维空间内排列圆形对象,使得这些对象既不会...
- 2019-10-17 06:31回答 4 已采纳 list.insert(0,"")
- 2022-05-28 16:50回答 2 已采纳 //选中的元素改变时响应事件 form.listView1.ItemSelectionChanged += (o, e) => { ListViewItem? selectedItem
- 2018-05-08 07:43回答 5 已采纳 ``` using System; using System.Collections.Generic; using System.Linq; using System.Text;
- 2023-10-29 00:48吉特思米(gitusme)的博客 有关 record 类型的详细信息,请参阅 C# 中的记录类型简介。 要自动将 GET 请求反序列化为强类型 C# 对象,请使用 System.Net.Http.Json NuGet 包中的 GetFromJsonAsync 扩展方法。 static async Task ...
- 2018-10-19 18:42回答 1 已采纳 用distinct 方法 之前的程序我用表达式代替反射,给你写了一下: ``` using System; using System.Collections.Generic; u
- 2018-11-17 23:40回答 2 已采纳 非常非常遗憾,.NET里是有一个方法可以将值类型作为引用类型使用的,然而我忘记了,而且google了一圈也没找到,看来这是一个非常底层,知道的人非常少的方法。 如果我什么时候想起来了,我会补充,真的
- 2018-07-08 17:36回答 3 已采纳 private void button1_Click(object sender, EventArgs e) { String strLJ1
- 2024-10-28 07:03IT技术分享社区的博客 今天继续给大家啊分享NET MAUI中布局用法,希望对大家能有所帮助!
- 2023-01-28 07:27哈桑indie的博客 对《Effective C#:改善C#代码的50个有效方法》一书整理的读书笔记。
- 2022-09-24 08:131. **C++ Builder中的集合搜索**:在C++ Builder中,可以利用STL(标准模板库)中的容器,如`std::vector`、`std::list`或`std::set`,进行集合搜索。STL提供了迭代器,允许我们遍历容器中的元素,实现线性搜索。...
- 2025-01-07 03:47Lion King的博客 本文来自w3c教程的C#教程的学习笔记,对其中的示例有所删减与变更,建议以以下链接为准。C# 简介_w3cschool。
- 没有解决我的问题, 去提问
联系我们(工作时间:8:30-22:00)
400-660-0108kefu@csdn.net在线客服
- 京ICP备19004658号
- 经营性网站备案信息
- 公安备案号11010502030143
- 营业执照
- 北京互联网违法和不良信息举报中心
- 家长监护
- 中国互联网举报中心
- 网络110报警服务
- Chrome商店下载
- 账号管理规范
- 版权与免责声明
- 版权申诉
- 出版物许可证
- ©1999-2025北京创新乐知网络技术有限公司