Создание приложения для управления книгами с помощью меню на Kotlin

Вот пример кода Kotlin для приложения с меню для управления книгами для Geeks Publishing, Inc.:

import java.util.Scanner
data class Book(val id: Int, val title: String, val author: String)
class BookManager {
    private val books = mutableListOf<Book>()
    private var nextId = 1
    fun addBook(title: String, author: String) {
        val book = Book(nextId, title, author)
        books.add(book)
        nextId++
        println("Book added successfully!")
    }
    fun removeBook(id: Int) {
        val book = books.find { it.id == id }
        if (book != null) {
            books.remove(book)
            println("Book removed successfully!")
        } else {
            println("Book not found!")
        }
    }
    fun displayBooks() {
        if (books.isEmpty()) {
            println("No books found!")
        } else {
            println("Books:")
            for (book in books) {
                println("${book.id}: ${book.title} by ${book.author}")
            }
        }
    }
}
fun main() {
    val bookManager = BookManager()
    val scanner = Scanner(System.`in`)
    while (true) {
        println("Menu:")
        println("1. Add a book")
        println("2. Remove a book")
        println("3. Display all books")
        println("4. Exit")
        print("Enter your choice: ")
        val choice = scanner.nextInt()
        when (choice) {
            1 -> {
                print("Enter book title: ")
                val title = scanner.nextLine()
                print("Enter book author: ")
                val author = scanner.nextLine()
                bookManager.addBook(title, author)
            }
            2 -> {
                print("Enter book ID: ")
                val id = scanner.nextInt()
                bookManager.removeBook(id)
            }
            3 -> bookManager.displayBooks()
            4 -> return
            else -> println("Invalid choice!")
        }
        println()
    }
}

Этот код предоставляет интерфейс на основе меню для управления книгами для Geeks Publishing, Inc. Пользователь может добавить книгу, удалить книгу, отобразить все книги или выйти из приложения. Книги хранятся в списке, и каждая книга имеет идентификатор, название и автора.

Вот методы, включенные в этот пример кода:

  1. addBook(title: String, author: String): добавляет книгу в список книг.
  2. removeBook(id: Int): удаляет книгу из списка на основе ее идентификатора.
  3. displayBooks(): отображает все книги в списке.