图书管理系统支持添加、查询、修改、删除图书信息,用 List 存储数据。
案例:图书管理系统
public class Book { public int Id { get; set; } public string Title { get; set; } // 书名 public string Author { get; set; } // 作者 public decimal Price { get; set; } // 价格 public string Category { get; set; } // 分类 public override string ToString() { return $"ID:{Id} | 书名:{Title} | 作者:{Author} | 价格:{Price:C} | 分类:{Category}"; } } public class BookManager { private static List<Book> _books = new List<Book>(); private static int _nextId = 1; // 自增ID // 添加图书 public static void AddBook() { Book book = new Book(); book.Id = _nextId++; Console.Write("请输入书名:"); book.Title = Console.ReadLine()?.Trim() ?? ""; Console.Write("请输入作者:"); book.Author = Console.ReadLine()?.Trim() ?? ""; Console.Write("请输入价格:"); decimal.TryParse(Console.ReadLine()?.Trim(), out decimal price); book.Price = price; Console.Write("请输入分类:"); book.Category = Console.ReadLine()?.Trim() ?? ""; _books.Add(book); Console.WriteLine("图书添加成功!"); } // 查询所有图书 public static void QueryAllBooks() { if (_books.Count == 0) { Console.WriteLine("暂无图书信息!"); return; } Console.WriteLine("=== 所有图书信息 ==="); foreach (var book in _books) { Console.WriteLine(book); } } // 按书名查询图书 public static void QueryBookByTitle() { Console.Write("请输入要查询的书名关键词:"); string keyword = Console.ReadLine()?.Trim() ?? ""; var result = _books.Where(b => b.Title.Contains(keyword, StringComparison.OrdinalIgnoreCase)).ToList(); if (result.Count == 0) { Console.WriteLine("未找到匹配的图书!"); return; } Console.WriteLine($"=== 找到 {result.Count} 本匹配图书 ==="); foreach (var book in result) { Console.WriteLine(book); } } // 删除图书 public static void DeleteBook() { Console.Write("请输入要删除的图书ID:"); if (!int.TryParse(Console.ReadLine()?.Trim(), out int id)) { Console.WriteLine("无效的ID!"); return; } Book book = _books.FirstOrDefault(b => b.Id == id); if (book == null) { Console.WriteLine("未找到该ID的图书!"); return; } _books.Remove(book); Console.WriteLine("图书删除成功!"); } // 显示菜单 public static void ShowMenu() { Console.WriteLine("\n=== 图书管理系统 ==="); Console.WriteLine("1. 添加图书"); Console.WriteLine("2. 查询所有图书"); Console.WriteLine("3. 按书名查询图书"); Console.WriteLine("4. 删除图书"); Console.WriteLine("5. 退出系统"); Console.Write("请选择操作(1-5):"); } public static void Main(string[] args) { while (true) { ShowMenu(); string choice = Console.ReadLine()?.Trim() ?? ""; switch (choice) { case "1": AddBook(); break; case "2": QueryAllBooks(); break; case "3": QueryBookByTitle(); break; case "4": DeleteBook(); break; case "5": Console.WriteLine("退出系统!"); return; default: Console.WriteLine("无效操作,请重新选择!"); break; } } } }