unity中Dictionary用法

发布时间 2023-03-30 14:05:32作者: 鸱夷

作用

在unity中序列化显示,每个key只能对应一个值,对应关系线性

实例化

Dictionary<key,value>字典名Dic;

可嵌套

Dictionaty<key1,Dictionary<key2,value>Dic>Dict1;

常见方法

添加:Dic.Add(key,value)

删除:Dic.Remove(key)

访问:Dic(key)

判断空:Dic.ContainsKey(key)

字典赋值

先设置一个结构体数组

[System.Serializable]  //在unity面板上序列化显示

  public struct colorSprite  //写成结构体的形式

  {

    public ColorType color;

    public Sprite sprite;

  }

  public colorSprite[] colorSprite;  //结构体数组

然后在inspector面板上设置Element,并拖入对应素材(预制体)

添加成功后,在Start()中将结构体数组中的元素压入字典

colorDic = new Dictionary<ColorType,Sprite();

    for(int i=0;i<colorSprites.Lenght;i++)

    {

  //字典中是否有了此种颜色

  if(!colorDic.ContainsKey(colorSprite[i{.color)

  {

   color.Add(colorSprite[i].color,colorSprites[i].sprite);

  }