[C#基础训练]FoodRobot食品管理部分代码-1

代码参考:

cs 复制代码
using System;

namespace FoodRobotDemo
{  
    public class FoodRobot
    {
        private int[] foodCountArr;
        private string[] foodNameArr;

        public FoodRobot()
        {
            foodCountArr = new int[3];
            foodNameArr = new string[3] {"航天","航空","宇航" };
        }
        public int this[string name]
        {
            get
            {
                int i = Array.IndexOf(foodNameArr, name);
                if (i != -1 && i >= 0 && i < 3)
                    return foodCountArr[i];
                else
                {
                    Console.WriteLine("读取操作有误,找不到{0}食品",name);
                    return -1;
                }
            }
            set
            {
                int i = Array.IndexOf(foodNameArr, name);
                if (i != -1)
                    foodCountArr[i] = value;
                else
                    Console.WriteLine("赋值操作有误,找不到{0}食品", name);
            }
        }      
       
    }


    class Program
    {
        static void Main(string[] args)
        {
            //多参数索引器和索引器重载          
            FoodRobot foodRobot = new FoodRobot();
            foodRobot["航天"] = 11;
            foodRobot["航空"] = 22;
            foodRobot["宇航"] = 33;
            foodRobot["行行"] = 44;
            Console.WriteLine(foodRobot["航天"]);
            Console.WriteLine(foodRobot["天天"]);
            Console.ReadKey();
        }
    }
}
相关推荐
麦德泽特5 分钟前
机器人赛事系统架构:基于UDT和MQTT的低延迟、高可靠通信
c语言·开发语言·安全·系统架构·机器人
lsx20240619 分钟前
TypeScript 循环
开发语言
utmhikari35 分钟前
【架构艺术】治理后端稳定性的一些实战经验
java·开发语言·后端·架构·系统架构·稳定性·后端开发
csbysj202038 分钟前
Swift 条件语句
开发语言
lly20240643 分钟前
Perl 正则表达式
开发语言
清水白石0081 小时前
Python 函数式编程实战:从零构建函数组合系统
开发语言·python
郝学胜-神的一滴1 小时前
Effective Modern C++ 条款36:如果有异步的必要请指定std::launch::async
开发语言·数据结构·c++·算法
小此方1 小时前
Re:从零开始的 C++ STL篇(六)一篇文章彻底掌握C++stack&queue&deque&priority_queue
开发语言·数据结构·c++·算法·stl
0 0 01 小时前
CCF-CSP 40-2 数字变换(transform)【C++】考点:预处理
开发语言·c++·算法
Web打印1 小时前
Phpask(php集成环境)之08 tp5验证码无法显示
开发语言·php