1. 실행 이미지

 

2. 빈 오브젝트에 Zoo 스크립트 부착

 

using System.Collections.Generic;
using System.Collections;
using UnityEngine;


public class Zoo : MonoBehaviour
{
    private List<Animal> fence = new List<Animal>();

    private Dictionary<Animal.AnimalType, int> dicFence = new Dictionary<Animal.AnimalType, int>();
    void Start()
    {

        AddAnimalToFence(Animal.AnimalType.Goat);
        AddAnimalToFence(Animal.AnimalType.Goat);
        AddAnimalToFence(Animal.AnimalType.Giraffe);
        AddAnimalToFence(Animal.AnimalType.Elephant);
        AddAnimalToFence(Animal.AnimalType.Lion);

        PrintAnimalsInFence();



        DicAddAnimalToFence(Animal.AnimalType.Goat);
        DicAddAnimalToFence(Animal.AnimalType.Goat);
        DicAddAnimalToFence(Animal.AnimalType.Giraffe);
        DicAddAnimalToFence(Animal.AnimalType.Elephant);
        DicAddAnimalToFence(Animal.AnimalType.Lion);

        DicPrintAnimalsInFence();

    }

    void AddAnimalToFence(Animal.AnimalType type)
    {
        Animal animal = new Animal(type);
        fence.Add(animal);
    }

    void PrintAnimalsInFence()
    {
        foreach (var animal in fence)
        {
            Debug.Log(animal.Type);
        }
    }


    void DicAddAnimalToFence(Animal.AnimalType type)
    {
        if (dicFence.ContainsKey(type))
        {
            dicFence[type]++;
        }
        else
        {
            dicFence.Add(type, 1);
        }
    }
    void DicPrintAnimalsInFence()
    {
        foreach (var animal in dicFence)
        {
            Debug.LogFormat("{0} x {1}", animal.Key, animal.Value);
        }
    }
}

 

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Animal
{
    public enum AnimalType
    {
        Goat,
        Lion,
        Giraffe,
        Elephant
    }
    public AnimalType Type { get; set; }

    public Animal(AnimalType type)
    {
        Type = type;
    }
}
반응형

+ Recent posts