首页 > 解决方案 > 如何使用方法将对象添加到私有列表?

问题描述

您可以看到我创建的列表是私有的,我希望能够将对象添加到列表中,并通过方法 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");
        }
    }
}

由于引用列表的“非静态字段、方法或属性需要对象引用”,因此循环不起作用。

标签: c#listobjectaddprivate

解决方案


如果您不想在书籍集合上使用静态,请执行以下操作:

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");
        }
    }
}

推荐阅读