c# List find()方法返回值的问题说明(返回结果为对象的指针)

 更新时间:2014年01月21日 08:54:30   作者:  
本篇文章主要介绍了c#中List find()方法返回值的问题说明(返回结果为对象的指针) 需要的朋友可以过来参考下,希望对大家有所帮助

C#中List<T>中泛型T如果是一个对象的话,则利用Find函数返回的将是这个对象的指针,对其返回对象的属性进行操作,也会影响list中相应元素对象的值。验证如下:
1.新建一个Class1类,其含有两个姓名和分数两个属性:

复制代码 代码如下:

<SPAN style="FONT-SIZE: 18px">    public class Class1
    {
        public string name{ get; set; }
        public int score { get; set; }

    }</SPAN>


2.在窗口类中写入如下代码,在button1_Click的事件中的右括号处设置断点。
复制代码 代码如下:

<SPAN style="FONT-SIZE: 18px">        public Form1()
        {
            InitializeComponent();
        }
        Class1 a = new Class1();
        Class1 b = new Class1();
        List<Class1> l = new List<Class1>();

        private void button1_Click(object sender, EventArgs e)
        {
            string name = "小明";
            Class1 c = l.Find(delegate(Class1 p) { return (p.name.Equals(name)); });
            c.score = 100;

        }

        private void Form1_Load(object sender, EventArgs e)
        {
            a.name = "小明";
            a.score = 90;
            l.Add(a);


            b.name = "小红";
            b.score = 99;
            l.Add(b);
        }</SPAN>


3.运行结果如下:

由图可知,想button事件中对对象c的改变,使list中相应对象也发生了改变。故其返回值为对象的引用

相关文章

  • C#实现PDF合并的项目实践

    C#实现PDF合并的项目实践

    有时我们可能会遇到需要的资料或教程被分成了几部分存放在多个PDF文件中,本文主要介绍了C#实现PDF合并的项目实践,具有一定的参考价值,感兴趣的可以了解一下
    2024-01-01
  • C#实现文件筛选读取并翻译的自动化工具

    C#实现文件筛选读取并翻译的自动化工具

    这篇文章主要为大家详细介绍了如何利用C#实现文件筛选及读取内容,并翻译的自动化工具,文中的示例代码讲解详细,感兴趣的小伙伴可以了解一下
    2023-03-03
  • 解析C#中#region与#if的作用

    解析C#中#region与#if的作用

    以下是对C#中#region与#if的作用进行了详细的介绍,需要的朋友可以过来参考下
    2013-09-09
  • C#通过流写入数据到文件的方法

    C#通过流写入数据到文件的方法

    这篇文章主要介绍了C#通过流写入数据到文件的方法,涉及C#通过字节流读写文件的相关技巧,需要的朋友可以参考下
    2015-07-07
  • unity实现简单的贪吃蛇游戏

    unity实现简单的贪吃蛇游戏

    这篇文章主要为大家详细介绍了unity实现简单的贪吃蛇游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-03-03
  • 如何在datagridview中添加button按钮

    如何在datagridview中添加button按钮

    这篇文章主要介绍了如何在datagridview中添加button按钮问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-09-09
  • 如何使用C#在PDF文件添加图片印章

    如何使用C#在PDF文件添加图片印章

    文档中添加印章可以起一定的作用,比如,防止文件随意被使用,或者确保文档内容的安全性和权威性。C#添加图片印章其实也有很多实现方法,这里我使用的是免费的第三方软件Free Spire.PDF,向大家阐述如何以编程的方式在PDF文件中添加图片印章
    2017-01-01
  • C#实现在底图上动态生成文字和图片

    C#实现在底图上动态生成文字和图片

    这篇文章主要为大家详细介绍了C#实现在底图上动态生成文字和图片,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-05-05
  • .NET垃圾回收器(GC)原理浅析

    .NET垃圾回收器(GC)原理浅析

    这篇文章主要介绍了.NET垃圾回收器(GC)原理浅析,本文先是讲解了一些基础知识如托管堆(Managed Heap)、CPU寄存器(CPU Register)、根(Roots)等,然后讲解了垃圾回收的基本原理、算法等,需要的朋友可以参考下
    2015-01-01
  • C# 设计模式系列教程-外观模式

    C# 设计模式系列教程-外观模式

    外观模式松散了客户端与子系统的耦合关系,让子系统内部的模块能更容易扩展和维护。
    2016-06-06

最新评论