[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();
        }
    }
}
相关推荐
2401_83847251几秒前
C++图形编程(OpenGL)
开发语言·c++·算法
雨季6661 小时前
Flutter 三端应用实战:OpenHarmony “极简手势轨迹球”——指尖与屏幕的诗意对话
开发语言·javascript·flutter
m0_736919101 小时前
编译器命令选项优化
开发语言·c++·算法
Stream_Silver1 小时前
【Agent学习笔记1:Python调用Function Calling,阿里云API函数调用与DeepSeek API对比分析】
开发语言·python·阿里云
froginwe111 小时前
CSS3 多媒体查询实例
开发语言
naruto_lnq1 小时前
C++中的工厂方法模式
开发语言·c++·算法
独自破碎E1 小时前
LCR_019_验证回文串II
java·开发语言
一切尽在,你来1 小时前
C++多线程教程-1.2.3 C++并发编程的平台无关性
开发语言·c++
坚持就完事了1 小时前
Java中的一些关键字
java·开发语言
雨季6661 小时前
Flutter 三端应用实战:OpenHarmony “专注时光盒”——在碎片洪流中守护心流的数字容器
开发语言·前端·安全·flutter·交互