C# 如何将对象从一个类传递到另一个类的列表中?

C# 如何将对象从一个类传递到另一个类的列表中?,c#,list,class,C#,List,Class,我试图将名为“itemRock”的类Item对象传递到名为“plyItems”的类清单列表中 公共类项目 { 公共项目() { itemRock=新项目(); itemRock.Name=“Rock”; itemRock.Description=“这是一块石头。”; } } 公共类目录 { 公共库存() { List plyItems=新列表(); plyItems.Add(itemRock.Name); } } 这里有几个问题。首先,您的代码应该如下所示: public class Item

我试图将名为“itemRock”的类Item对象传递到名为“plyItems”的类清单列表中


公共类项目
{
公共项目()
{
itemRock=新项目();
itemRock.Name=“Rock”;
itemRock.Description=“这是一块石头。”;
}
}
公共类目录
{
公共库存()
{
List plyItems=新列表();
plyItems.Add(itemRock.Name);
}
}

这里有几个问题。首先,您的代码应该如下所示:

public class Item
{
    string Name = "Rock";
    string Description = "It's a rock.";
}

public class Inventory
{
    List<string> plyItems = new List<string>();
}
然后在代码中的某个地方创建了
项目
的实例和
库存
的实例后:

Item item = new Item();
Inventory inventory = new Inventory();
您可以将其添加到列表中:

inventory.plyItems.Add(item.Name);
选项2:制作一对函数:

public class Item
{
    string Name = "Rock";
    string Description = "It's a rock.";
    public string GetName() 
    { 
        return name; 
    }
}

public class Inventory
{
    List<string> plyItems = new List<string>();
    public void AddName(string _name)
    {
        plyItems.Add(_name);
    }
}

根据我的经验,这通常是一个比较例外的答案。

您遇到的问题是什么?由于几个原因,此代码无法编译,您有哪些错误?它告诉我无法将itemRock从类Item传递到list plyItems。Add-In类Inventory。我想做的是使用一个列表创建一些模拟的库存系统,在类中我列出了将传递给库存类的项目。你调试过你的代码了吗,这发生在哪一行?现在这些都无法编译…它无法解析“itemRock in class Inventory”。更好的是,如果您需要存储的不仅仅是
item.Name
(我猜您是通过变量名来判断的),您可以将列表转换为
item
的列表,即
list plyItems=new list()
还有其他几种方法可以做到这一点。这只是最常见的两种方法。
public class Item
{
    string Name = "Rock";
    string Description = "It's a rock.";
    public string GetName() 
    { 
        return name; 
    }
}

public class Inventory
{
    List<string> plyItems = new List<string>();
    public void AddName(string _name)
    {
        plyItems.Add(_name);
    }
}
inventory.AddName(item.GetName());