当前位置:  编程技术>.net/c#/asp.net

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

    来源: 互联网  发布时间:2014-11-01

    本文导语:  本文实例展示了C#索引器的使用方法,对于C#的初学者来说是很有必要熟练掌握的,具体用法如下: 首先,索引器(Indexer)是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#索引器的使用方法的认识,进一步巩固基础知识。


    
 
 

您可能感兴趣的文章:

  • C# Dictionary操作范例(入门新手参考)
  • 希望了解java,能推荐一个好的开发工具和一本好的入门书籍吗?我以前直到现在都在用VC,接下来想在C#和java中选一个做为第二语言。
  • C#入门之checked和unchecked的区别实例解析
  • C#实现GZip压缩和解压缩入门实例
  • C#入门学习笔记之C#匿名方法
  • c#创建windows服务入门教程实例
  • C#入门学习笔记之事件和委托的实例
  • c#入门之类型转换详解
  • C# BackgroundWorker组件学习入门介绍
  • 学习C# Socket入门实例代码
  • c# 接口interface基础入门小例子
  • c#入门之分支语句使用方法(三元运算符、if语句、switch语句)
  • c#入门之实现简易存款利息计算器示例
  • c#入门之循环语句使用详解(for循环、do/while)
  • C#反射实例学习入门及注意事项
  • C# 对XML操作入门实例
  • c#操作xml文件的实例(入门参考)
  • c#入门之枚举和结构体使用详解(控制台接收字符串以相反的方向输出)
  • c# 通用文件上传类(适合入门)
  • 在X分钟内学会C#的入门简明教程
  • php读取mysql数据库入门实例
  • 请问谁有《JBuilder6实例入门》,海洋出版社的,黄色封面,我的光盘坏了一部分,求救!
  • php读取mysql入门实例
  • php读取sqlite数据库入门实例
  • destoon入门教程与技巧实例
  • Android入门之LinearLayout、AbsoluteLayout的用法实例讲解
  • php读取sqlite入门实例
  • destoon二次开发入门实例教程
  • php入门实例查询数据库记录
  • php导出数据为csv文件(入门实例)
  • Android入门简单实例
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 关于docker入门教程
  • JAVA 怎么入门?
  • Python下Html/xml解析库Beautiful Soup快速入门教程
  • linux入门书籍?
  • 谢谢推荐几本关于JAVA入门好书?
  • 求KDevelop 入门教程
  • Vxworks 嵌入式操作系统入门请教,请多指点!
  • 我刚开始学linux,哪位有入门的视频教学呀!
  • ECMAScript 6入门
  • 请大家介绍一下java BEAN的入门读物吧
  • 请推荐几本java的入门和提高书籍.
  • 关于linux下编程入门的书籍
  • 移动开发 iis7站长之家
  • linux驱动入门问题
  • 求linux入门帮助
  • 求Linux的入门书籍
  • 谁能告诉我JAVA怎样快速的入门?
  • 大家帮忙推荐一本linux socket编程的入门书,我刚接触socket,谢谢!!
  • 准备从Windows转向Linux的软件开发,语言为C++,怎么入门?
  • 排版入门套件 Typeplate
  • 送分!!!入门的选择??


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3