Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

454
Visualizações
c# Imprimir elementos de la lista en una clase

Buenas tardes,

Estoy tratando de refrescar un poco mis conocimientos sobre C# y tengo el desafío de crear una clase llamada Biblioteca, con una propiedad de Listar libros. Tengo otra clase llamada Libros que obtiene el título, autor y número de páginas. El objetivo aquí es agregar libros de la otra clase a la biblioteca.

Agregué mis libros de mi clase de libros a la Lista de la biblioteca. Parece que no puedo imprimirlo en la consola debido a un error que agregaré al final. Sé cómo imprimir los elementos de la lista normalmente, pero no para esto.

Clase para libro

 public class Book { //This Class doesn't require fields //properties public string Title { get; set; } public string Author { get; set; } public int NumberOfPages { get; set; } //Constructors public Book() { } public Book(string title, string author, int numberOfPages) { Title = title; Author = author; NumberOfPages = numberOfPages; } public override string ToString() { return $"Title: {Title}\n" + $"Author: {Author}\n" + $"Number of pages: {NumberOfPages}"; } }

Clase para biblioteca

 public class Library { //This class has no fields //Properties public List<Book> Books { get; set; } public string LibraryName { get; set; } public string StreetAddress { get; set; } public string City { get; set; } public string State { get; set; } public string Zip { get; set; } //Constructors public Library() { } public Library(List<Book> books, string libraryName, string streetAddress, string city, string state, string zip) { Books = books; LibraryName = libraryName; StreetAddress = streetAddress; City = city; State = state; Zip = zip; } public override string ToString() { return $"{Books}\n\n" + $"Library Name: {LibraryName}\n" + $"Address: {StreetAddress}, {City}, {State} {Zip}"; } }

Método para imprimir la clase en la consola

 void Library() { List<Book> books = new List<Book>(); books.Add(lordLoss); books.Add(harryPotter); Library kansasCity = new Library(books, "Kansas City Library", "3242 E 24th St", "Kansas City", "MO", "64115"); Console.WriteLine(books); }

Código de error que estoy recibiendo

 System.Collections.Generic.List`1[ClassLibrary.Book]
over 4 years ago · Santiago Trujillo
2 Respostas
Responde à pergunta

0

Descubrí la respuesta. Simplemente puede colocar el foreach dentro del área ToString().

 public override string ToString() { string booksInLibrary = ""; foreach (Book b in Books) { booksInLibrary += b + "\n"; } return $"Books: \n {booksInLibrary}" + $"Library Name: {LibraryName}\n" + $"Address: {StreetAddress}, {City}, {State} {Zip}"; }
over 4 years ago · Santiago Trujillo Relatório

0

Tendrá que iterar sobre la lista e imprimir cada libro por separado.

Con bucle for :

 for (int i = 0; i < books.Count; i++) { Book book = books[I]; Console.WriteLine(book); }

Con bucle foreach :

 foreach (Book book in books) { Console.WriteLine(book); }

Con List.ForEach :

 books.ForEach(book => Console.WriteLine(book));
over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda