zoukankan      html  css  js  c++  java
  • C#索引器简单示例

    打开.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();

            }

        }

    执行结果:

  • 相关阅读:
    python简单的游戏场景代码
    ZooKeeper应用场景
    Zookeeper配置文件中的配置项解释和Zookeeper的安装
    MapReduce的手机流量统计的案例
    java和js获取当前天之后或之前7天(任意)日期
    JDK中ThreadDump诊断Java代码中的线程死锁问题
    Java代码调用Oracle的存储过程,存储函数和包
    Oracle的卸载过程步骤
    JDK中ConcurrentHashMap效率测试
    JDK提供的四种线程池代码详解
  • 原文地址:https://www.cnblogs.com/zhangchenliang/p/2971062.html
Copyright © 2011-2022 走看看