C# 如何将对象从一个类传递到另一个类的列表中?
我试图将名为“itemRock”的类Item对象传递到名为“plyItems”的类清单列表中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=新项目();
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());