C#索引器简单实例代码

 更新时间:2013年03月20日 14:31:00   作者:  
打开.Net Framework源代码随便看几个类,就会发现索引器的影子。索引器可以被重载,可以接收一个或者多个参数,但是不可以定义为静态的。可以用关联数组的方式访问索引器。

复制代码 代码如下:

public class Fruit

{

        string peach = "a round juicy fruit that has a soft yellow or red skin and a large hard seed in the center, or the tree that this fruit grows on";

        string orange = "a round fruit that has a thick orange skin and is divided into parts inside";

        string banana = "a long curved tropical fruit with a yellow skin";

        string apple = "a hard round fruit that has red, light green, or yellow skin and is white inside ";

        public string this[string fruitName]

        {

            get

            {

                switch (fruitName)

                {

                    case "peach":

                        return peach;

                    case "orange":

                        return orange;

                    case "banana":

                        return banana;

                    case "apple":

                        return apple;

                    default:

                        throw new Exception("wrong fruit name");

                }

            }

            set

            {

                switch (fruitName)

                {

                    case "peach":

                        peach = value;

                        break;

                    case "orange":

                        orange = value;

                        break;

                    case "banana":

                        banana = value;

                        break;

                    case "apple":

                        apple = value;

                        break;

                    default:

                        throw new Exception("wrong fruit name");

                }

            }

        }

    }

    class Program

    {

        static void Main(string[] args)

        {

            Fruit f = new Fruit();

            //关联数组的方式访问get方法

            Console.WriteLine(f["peach"]);

            //关联数组的方式访问set方法

            f["peach"] = "I like to eat peach.";

            Console.WriteLine(f["peach"]);

            Console.ReadLine();

        }

    }

相关文章

  • C# 数组实例介绍(图文)

    C# 数组实例介绍(图文)

    数组即是一组相同类型组合在一起,使用一个通用的名称,通过分配的下标访问的数据集合中的元素。
    2014-08-08
  • C#使用IronPython调用Python

    C#使用IronPython调用Python

    这篇文章主要给大家介绍了关于C#使用IronPython调用Python的相关资料, c#利用IronPython调用python的过程中总会遇到种种问题,这里给大家总结下,需要的朋友可以参考下
    2023-07-07
  • C#编程自学之开篇介绍

    C#编程自学之开篇介绍

    这篇是一篇关于C#编程自学的入门文章,学习C#的开始,开启了C#的奇妙之旅,感兴趣的小伙伴们可以持续关注系列文章。
    2015-10-10
  • C#创建WebService接口并连接的全过程

    C#创建WebService接口并连接的全过程

    工作时遇到需要请求客户的接口返回数据,要求使用WebService,借此机会记录一下,下面这篇文章主要给大家介绍了关于C#创建WebService接口并连接的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2022-12-12
  • C#正则匹配RegexOptions选项的组合使用方法

    C#正则匹配RegexOptions选项的组合使用方法

    本文主要简单介绍RegexOptions各种选项的作用,并介绍如何组合使用,为初学者解除一些疑惑。
    2016-04-04
  • c# 闭包的相关知识以及需要注意的地方

    c# 闭包的相关知识以及需要注意的地方

    这篇文章主要介绍了c# 闭包的相关知识以及需要注意的地方,文中讲解非常细致,代码帮助大家理解和学习,感兴趣的朋友可以参考下
    2020-06-06
  • C#如何连接MySQL数据库

    C#如何连接MySQL数据库

    这篇文章主要介绍了C#如何连接MySQL数据库,帮助大家更好的理解和使用c#,感兴趣的朋友可以了解下
    2020-10-10
  • C# 使用EntityFramework CodeFirst 创建PostgreSQL数据库的详细过程

    C# 使用EntityFramework CodeFirst 创建PostgreSQL数据库的详细过程

    这篇文章主要介绍了C#使用EntityFramework CodeFirst创建PostgreSQL数据库的过程,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-07-07
  • c#扫描图片去黑边(扫描仪去黑边)

    c#扫描图片去黑边(扫描仪去黑边)

    最近项目遇到一个问题,需要对扫描出来的图片进行去除黑边,下面是实现代码,需要的朋友可以参考下
    2014-03-03
  • 详解c#中Array,ArrayList与List<T>的区别、共性与相互转换

    详解c#中Array,ArrayList与List<T>的区别、共性与相互转换

    本文详细讲解了c#中Array,ArrayList与List<T>的区别、共性与相互转换,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-12-12

最新评论