Допустим я написал программу из 3-х классов. 1-ый класс с 3-мя параметрами: название книги, ее автора и год издания
using System;
using System.Collections.Generic;
using System.Text;
namespace lab1._1
{
class Book
{
public string name;
public string author;
public int year;
public int quantity;
public Book(string name, string author, int year, int quantity)
{
this.name = name;
this.author = author;
this.year = year;
this.quantity = quantity;
}
public Book()
{
name = "Евгений Онегин";
author = "А.С. Пушкин";
year = 1833;
quantity = 4;
}
public void GetInformation()
{
Console.WriteLine("книга '{0}' автор {1} была издана в {2} году, колличество экземпляров: {3}", name,
author, year, quantity);
}
}
}
так же есть класс library для хранения книг в коллекции book
using System;
using System.Collections.Generic;
using System.Text;
namespace lab1._1
{
class library
{
public List<Book> books = new List<Book> { };
private string filterAuthor;
public List<Book> fnd(string author)
{
filterAuthor = author;
List<Book> res = books.FindAll(PredicateAuthor);
return res;
}
private bool PredicateAuthor(Book bk)
{
if (bk.author == filterAuthor)
return true;
else
return false;
}
}
}
и главная программа где добавляются книги
namespace lab1._1
{
class Program
{
static void Main(string[] args)
{
Book b1 = new Book("Война и мир", "Л.Н. Толстой", 1869, 6);
Book b2 = new Book();
Book b3 = new Book("Филипок", "Л.Н. Толстой", 1875, 7);
Book b4 = new Book();
Book b5 = new Book("Отцы и дети", "Л.Н. Толстой", 1999, 3);
Book b6 = new Book();
library bibl1 = new library(); // создание новой библиотек
bibl1.books.Add(b1); // добавление книг в коллекцию библиотеки
bibl1.books.AddRange(new Book[] { b2, b3, b4, b5 });
List<Book> res = bibl1.fnd("Л.Н. Толстой");
foreach (Book b in res)
{
b.GetInformation();
}
Console.ReadKey();
}
}
}
Вопрос состоит в следующем: как добавить в класс library метод с помощью которого можно добавлять книги и выводить их в главной программе ( Program ). Ниже прикрепляю свои неудачные попытки это сделать
1-ая
public void Add_book(string name, string author, int year, int quantity)
{
string n = name;
string a = author;
int y = year;
int q = quantity;
Console.Write("Введите название: ");
n = Console.ReadLine();
Console.Write("Введите автора: ");
a = Console.ReadLine();
Console.Write("Введите год: ");
y = int.Parse(Console.ReadLine());
Console.Write("Введите колличество: ");
q = int.Parse(Console.ReadLine());
//List<Book> ser = new Book() { name = n, author = a, year = y, quantity = q };
return;
}
2-ая
public void Add_book(string[] arg)
{
Book vvod = new Book();
Console.Write("Введите название: ");
vvod.name = Console.ReadLine();
Console.Write("Введите автора: ");
vvod.author = Console.ReadLine();
Console.Write("Введите год: ");
vvod.year = int.Parse(Console.ReadLine());
Console.Write("Введите колличество: ");
vvod.quantity = int.Parse(Console.ReadLine());
}
3-я
public void Add_new()
{
List<Book> parts = new List<Book>();
parts.Add(new Book() { name = "crank arm", author = "dsds", year = 1312, quantity = 5 });
parts.Add(new Book() { name = "аофлвы", author = "Л.Н. Толстой", year = 1333, quantity = 10 });
foreach (Book aPart in parts)
{
Console.WriteLine(aPart);
}
}
P.S. простите если не получилось красиво вставить код не так давно на этой платформе. Заранее спасибо :3