C#入门之索引器使用实例

 更新时间:2014年08月12日 15:15:15   投稿:shichen2014  
这篇文章主要介绍了C#的索引器使用方法,对此,C#初学者应予以牢固掌握,需要的朋友可以参考下

本文实例展示了C#索引器的使用方法,对于C#的初学者来说是很有必要熟练掌握的,具体用法如下:

首先,索引器(Indexer)是C#引入的一个新型的类成员,它使得类中的对象可以像数组那样方便、直观的被引用。索引器非常类似于属性,但索引器可以有参数列表,且只能作用在实例对象上,而不能在类上直接作用。定义了索引器的类可以让您像访问数组一样的使用 [ ] 运算符访问类的成员。(当然高级的应用还有很多,比如说可以把数组通过索引器映射出去等等)

索引器的语法如下:

1、它可以接受1个或多个参数
2、使用this为索引器的名字
3、参数化成员属性:包含set、get方法。

格式如下:
 
[访问修饰符] 数据类型 this[数据类型 标识符]
{
get{};
set{};
}

实例代码如下:

public class Indexsy
  {
    private string[] array ;
    public Indexsy(int num)
    {
      array = new string[num];
      for (int i = 0; i < num; i++)
      {
        array[i] = "Array"+i;
      }
    }
 
    public string this[int num]
    {
      get { return array[num]; }
      set { array[num] = value; }
    }
  }
 
///索引器调用
      Indexsy sy = new Indexsy(10);
      Response.Write(sy[5]);//输出Array5

多参数的实例如下:

public class Indexsy
  {
    private string[] array ;
    public Indexsy(int num)
    {
      array = new string[num];
      for (int i = 0; i < num; i++)
      {
        array[i] = "Array"+i;
      }
    }
 
    public string this[int num, string con]
    {
      get {
        if (num == 6)
        {
          return con;
        }
        else
        {
          return array[num];
        }
      }
      set
      {
        if (num == 6)
        {
          array[num] = con;
        }
        else
        {
          array[num] = value;
        }
 
      }
    }
  }
 
//方法调用
      Indexsy sy = new Indexsy(10);
      sy[5,"10"] = "更换set值"; 
      Response.Write(sy[5,""]+" "+sy[6,"更换内部参数"]+" "+sy[8,""]);//输出为更换set值 更换内部参数 Array8,

感兴趣的读者可以动手调试上述代码,可以加深对C#索引器的使用方法的认识,进一步巩固基础知识。

相关文章

  • LINQ基础之Join和UNION子句

    LINQ基础之Join和UNION子句

    这篇文章介绍了LINQ使用Join和UNION子句的方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-04-04
  • C#实现获取MAC地址的方法

    C#实现获取MAC地址的方法

    这篇文章主要介绍了C#实现获取MAC地址的方法,很实用的功能,需要的朋友可以参考下
    2014-08-08
  • C# Socket 发送&接收&返回 简单应用实例

    C# Socket 发送&接收&返回 简单应用实例

    下面小编就为大家分享一篇C# Socket 发送&接收&返回 简单应用实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2017-11-11
  • Unity3D基于OnGUI实时显示FPS

    Unity3D基于OnGUI实时显示FPS

    这篇文章主要介绍了Unity3D基于OnGUI实时显示FPS,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-11-11
  • 基于C#实现俄罗斯方块游戏

    基于C#实现俄罗斯方块游戏

    这篇文章主要为大家详细介绍了基于C#实现俄罗斯方块游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-06-06
  • C# Winform实现截图工具的示例代码

    C# Winform实现截图工具的示例代码

    这篇文章主要为大家详细介绍了如何使用C# Winform制作一个简单的截图工具,从而实现截图功能,文中的示例代码讲解详细,有需要的可以参考下
    2024-02-02
  • winform拦截关闭按钮触发的事件示例

    winform拦截关闭按钮触发的事件示例

    这篇文章主要介绍了c# winform拦截关闭按钮触发的事件示例,大家参考使用吧
    2014-01-01
  • c#构造ColorComboBox(颜色下拉框)

    c#构造ColorComboBox(颜色下拉框)

    这篇文章主要介绍了c#构造ColorComboBox的代码分享,大家参考使用吧
    2013-12-12
  • C#实现数字转换汉字的示例详解

    C#实现数字转换汉字的示例详解

    这篇文章主要为大家详细介绍了如何利用C#实现数字转换汉字功能,文中的示例代码讲解详细,对我们学习C#有一定的帮助,感兴趣的小伙伴可以跟随小编一起了解一下
    2022-12-12
  • 操作XML文档遇到的XMLNS问题及解决方法 (C# 和 PHP)

    操作XML文档遇到的XMLNS问题及解决方法 (C# 和 PHP)

    不管是用 PHP 还是 C#, 在操作 XML 的时候我们除了一个节点一个节点去取值之外, 还有一个非常方便的表达式, 就是 XPATH
    2011-05-05

最新评论