class App
{
//생성자
public App()
{
Inventory inven = new Inventory(5);
Item item1 = new Item("단검");
Item item2 = new Item("장검");
Item item3 = new Item("대검");
Item item4 = new Item("양손도끼");
Item item5 = new Item("장창");
Item item6 = new Item("방패");
Item item7 = new Item("활");
Console.WriteLine();
inven.AddItem(item1);
inven.AddItem(item2);
inven.AddItem(item3);
inven.AddItem(item4);
inven.AddItem(item5);
inven.AddItem(item6);
inven.AddItem(item7);
Console.WriteLine();
inven.GetItem("대검");
inven.GetItem("대검");
inven.GetItem("장창");
inven.GetItem("장창");
}
}
class Item
{
public string name;
public Item(string item)
{
this.name = item;
Console.WriteLine("생성된 아이템: {0}", this.name);
}
}
class Inventory
{
private Item[] items;
public Inventory(int capacity)
{
this.items = new Item[capacity];
}
public void AddItem(Item item)
{
for (int i = 0; i < items.Length; i++)
{
if (items[i] == null)
{
this.items[i] = item;
Console.WriteLine("추가된 아이템: {0}", this.items[i].name);
break;
}
if (i == items.Length - 1)
{
Console.WriteLine("빈 공간이 없습니다.");
}
}
}
public void GetItem(string name)
{
for (int i = 0; i < this.items.Length; i++)
{
if (this.items[i] != null && this.items[i].name == name)
{
Console.WriteLine("{0}을 찾았다.", this.items[i].name);
this.items[i] = null;
break;
}
if (i == items.Length - 1)
{
Console.WriteLine("가방에 {0}이 없습니다.", name);
}
}
}
}