c# - 如何使用方法将对象添加到私有列表?
问题描述
您可以看到我创建的列表是私有的,我希望能够将对象添加到列表中,并通过方法 AddBook() 和 ShowBooks() 向用户显示列表。
public class Library
{
private List<Book> Books = new List<Book>();
public static void AddBook()
{
}
public static void ShowBooks()
{
foreach (Book item in Books)
//This foreach-loop doesn't work since its a private list.
{
Console.WriteLine("Books found");
}
}
}
由于引用列表的“非静态字段、方法或属性需要对象引用”,因此循环不起作用。
解决方案
如果您不想在书籍集合上使用静态,请执行以下操作:
public class Library
{
private List<Book> Books = new List<Book>();
public void AddBook()
{
}
public void ShowBooks()
{
var library = new Library();
foreach (Book item in Books)
{
//This foreach-loop doesn't work since its a private list.
library.Books.Add(item);
Console.WriteLine("Books found");
}
}
}
推荐阅读
- html - 引导表单 - 调整屏幕大小时不会出现滚动
- python-3.x - 用 1D 矩阵索引 2D 矩阵
- r - R中手动模拟马尔可夫链(3)
- api - Telegram Bot API:缺少语音消息音频频谱图。一个错误?
- python - 如果条件为真,则为每一行设置新字段
- ios - 如何使用 swiftUI 显示警报
- windows - 在 Windows 的 git bash 中比较 git diff 中两个修订版的两个文件?
- cuda - 使用 cudaLaunchHostFunc 而不是 cudaStreamAddCallback 时如何从 CUDA 错误中恢复
- excel - 如果输入的日期无效,如何使我的代码循环到用户可以重试的位置?
- pytest - 同时运行测试