nobugdebug 2023-02-24 20:50 采纳率: 89.5%
浏览 25
已结题

JAVA。图书管理系统。代码问题修改

JAVA。图书管理系统。

还请麻烦看一下,该如何修改才能正常运行呢?

package cn.edu.xxx.cn.blms;

import javax.swing.*;
import javax.swing.plaf.synth.SynthRadioButtonMenuItemUI;
import java.util.Scanner;

/**时间:
 * 作者:
 * 图书管理系统主类
 */
public class App {
    /**
     * 输入扫描器
     */
    public static Scanner input;

    /**
     * 程序启动
     */
    public void run() {
        input = new Scanner(System.in);
        //TODO: 显示菜单,等待用户输入
        /**
         * 输出系统管理系统菜单
         */
        public void systemMenu() {
            System.out.println("----------------------------");
            System.out.println("          图书管理系统         ");
            System.out.println("-----------------------------");
            System.out.println("|         0...退出系统       |");
            System.out.println("|         1...读者管理       |");
            System.out.println("|         0...图书管理       |");
            System.out.println("|         0...借还图书       |");
            System.out.println("-----------------------------");
            System.out.print("请输入选项:");
        }
        input.close();
    }
    /**
     * 输出读者管理菜单
     */
    public void readerMenu() {
        System.out.println("----------------------------");
        System.out.println("           读者管理           ");
        System.out.println("-----------------------------");
        System.out.println("|         0...返回上级       |");
        System.out.println("|         1...添加读者       |");
        System.out.println("|         2...禁用读者       |");
        System.out.println("|         3...编辑读者       |");
        System.out.println("|         4...查询读者       |");
        System.out.println("-----------------------------");
        System.out.print("请输入选项:");
    }
    /**
     * 输出图书管理菜单
     */
    public void readerMenu() {
        System.out.println("----------------------------");
        System.out.println("           图书管理           ");
        System.out.println("-----------------------------");
        System.out.println("|        0...返回上级       |");
        System.out.println("|        1...添加图书       |");
        System.out.println("|        2...废弃图书       |");
        System.out.println("|        3...编辑图书       |");
        System.out.println("|        4...查询图书       |");
        System.out.println("-----------------------------");
        System.out.print("请输入选项:");
    }
    /**
     * 输出借还图书菜单
     */
    public void readerMenu() {
        System.out.println("----------------------------");
        System.out.println("           借还图书           ");
        System.out.println("-----------------------------");
        System.out.println("|         0...返回上级       |");
        System.out.println("|         1...借阅图书       |");
        System.out.println("|         2...归还图书       |");
        System.out.println("|         3...查询记录       |");
        System.out.println("-----------------------------");
        System.out.print("请输入选项:");
    }
    public static void main(String[] args) {
        App app = new App();
        app.run();
        /**
         * 实现1级菜单"系统管理"交互逻辑
         */
        public void run(){
            input = new Scanner(System.in);
            String systemMenuChoice;
            do {
                systemMenu();
                systemMenuChoice = input.nextLine();
                switch (systemMenuChoice) {
                    case "0":
                        System.out.println("成功退出系统,欢迎再次使用!");
                        break;
                    case "1":
                        //TODO:实现读者管理菜单交互
                        String readerMenuChoice;
                        do {
                            readerMenu();
                            readerMenuChoice = input.nextLine();
                            switch (readerMenuChoice) {
                                case "0":
                                    break;
                                case "1":
                                    //TODO:添加读者
                                    break;
                                case "2":
                                    //TODO:禁用读者
                                    break;
                                case "3":
                                    //TODO:编辑读者
                                    break;
                                case "4":
                                    //TODO: 查询读者
                                    break;
                                default:
                                    System.out.println("输入非法,请输入正确的菜单编号!");
                            }
                        }while(!("0").equals(readerMenuChoice));
                        break;
                    case "2":
                        //TODO:实现借还图书菜单交互
                        String bookMenuChoice;
                        do {
                            bookMenu();
                            bookMenuChoice = input.nextLine();
                            switch (bookMenuChoice) {
                                case "0":
                                    break;
                                case "1":
                                    //TODO:添加图书
                                    break;
                                case "2":
                                    //TODO:废弃图书
                                    break;
                                case "3":
                                    //TODO:编辑图书
                                    break;
                                case "4":
                                    //TODO: 查询图书
                                    break;
                                default:
                                    System.out.println("输入非法,请输入正确的菜单编号!");
                            }
                        }while(!("0").equals(readerMenuChoice));
                        break;
                    case "3":
                        //TODO:实现借还图书菜单交互
                        String borrowingMenuChoice;
                        do {
                            borrowingMenu();
                            borrowingMenuChoice = input.nextLine();
                            switch (borrowingMenuChoice) {
                                case "0":
                                    break;
                                case "1":
                                    //TODO:借阅图书
                                    break;
                                case "2":
                                    //TODO:归还图书
                                    break;
                                case "3":
                                    //TODO:查询记录
                                    break;
                                default:
                                    System.out.println("输入非法,请输入正确的菜单编号!");
                            }
                        }while(!("0").equals(borrowingMenuChoice));
                        break;
                    default:
                        System.out.println("输入非法,请输入正确的菜单编号!");
                }
            }
            while (!"0".equals(systemMenuChoice)) ;
            input.close();
        }

    }



更新,已更改1.2版本,还请大家帮忙看看有什么需要更改的地方(仅供学习参考)

package cn.edu.xxx.cn.blms;

import javax.swing.*;
import javax.swing.plaf.synth.SynthRadioButtonMenuItemUI;
import java.util.Scanner;

/**时间:
 * 作者:
 * 图书管理系统主类
 */
public class App {
    /**
     * 输入扫描器
     */
    public static Scanner input;

    /**
     * 程序启动
     */
    public void run() {
        input = new Scanner(System.in);
        //TODO: 显示菜单,等待用户输入
        /**
          实现1级菜单"系统管理"交互逻辑
         */
            String systemMenuChoice;
            do {
                systemMenu();
                systemMenuChoice = input.nextLine();
                switch (systemMenuChoice) {
                    case "0":
                        System.out.println("成功退出系统,欢迎再次使用!");
                        break;
                    case "1":
                        //TODO:实现读者管理菜单交互
                        String readerMenuChoice;
                        do {
                            readerMenu();
                            readerMenuChoice = input.nextLine();
                            switch (readerMenuChoice) {
                                case "0":
                                    break;
                                case "1":
                                    //TODO:添加读者
                                    break;
                                case "2":
                                    //TODO:禁用读者
                                    break;
                                case "3":
                                    //TODO:编辑读者
                                    break;
                                case "4":
                                    //TODO: 查询读者
                                    break;
                                default:
                                    System.out.println("输入非法,请输入正确的菜单编号!");
                            }
                        }while(!("0").equals(readerMenuChoice));
                        break;
                    case "2":
                        //TODO:实现借还图书菜单交互
                        String bookMenuChoice;
                        do {
                            bookMenu();
                            bookMenuChoice = input.nextLine();
                            switch (bookMenuChoice) {
                                case "0":
                                    break;
                                case "1":
                                    //TODO:添加图书
                                    break;
                                case "2":
                                    //TODO:废弃图书
                                    break;
                                case "3":
                                    //TODO:编辑图书
                                    break;
                                case "4":
                                    //TODO: 查询图书
                                    break;
                                default:
                                    System.out.println("输入非法,请输入正确的菜单编号!");
                            }
                        }while(!("0").equals(bookMenuChoice));
                        break;
                    case "3":
                        //TODO:实现借还图书菜单交互
                        String borrowingMenuChoice;
                        do {
                            borrowingMenu();
                            borrowingMenuChoice = input.nextLine();
                            switch (borrowingMenuChoice) {
                                case "0":
                                    break;
                                case "1":
                                    //TODO:借阅图书
                                    break;
                                case "2":
                                    //TODO:归还图书
                                    break;
                                case "3":
                                    //TODO:查询记录
                                    break;
                                default:
                                    System.out.println("输入非法,请输入正确的菜单编号!");
                            }
                        }while(!("0").equals(borrowingMenuChoice));
                        break;
                    default:
                        System.out.println("输入非法,请输入正确的菜单编号!");
                }
            }
            while (!"0".equals(systemMenuChoice)) ;
            input.close();
    }
        /**
         * 输出系统管理系统菜单
         */
        public void systemMenu() {
            System.out.println("----------------------------");
            System.out.println("          图书管理系统         ");
            System.out.println("-----------------------------");
            System.out.println("|         0...退出系统       |");
            System.out.println("|         1...读者管理       |");
            System.out.println("|         0...图书管理       |");
            System.out.println("|         0...借还图书       |");
            System.out.println("-----------------------------");
            System.out.print("请输入选项:");
        }
    }
    /**
     * 输出读者管理菜单
     */
    public void readerMenu() {
        System.out.println("----------------------------");
        System.out.println("           读者管理           ");
        System.out.println("-----------------------------");
        System.out.println("|         0...返回上级       |");
        System.out.println("|         1...添加读者       |");
        System.out.println("|         2...禁用读者       |");
        System.out.println("|         3...编辑读者       |");
        System.out.println("|         4...查询读者       |");
        System.out.println("-----------------------------");
        System.out.print("请输入选项:");
    }
    /**
     * 输出图书管理菜单
     */
    public void bookMenu() {
        System.out.println("----------------------------");
        System.out.println("           图书管理           ");
        System.out.println("-----------------------------");
        System.out.println("|        0...返回上级       |");
        System.out.println("|        1...添加图书       |");
        System.out.println("|        2...废弃图书       |");
        System.out.println("|        3...编辑图书       |");
        System.out.println("|        4...查询图书       |");
        System.out.println("-----------------------------");
        System.out.print("请输入选项:");
    }
    /**
     * 输出借还图书菜单
     */
    public void borrowingMenu() {
        System.out.println("----------------------------");
        System.out.println("           借还图书           ");
        System.out.println("-----------------------------");
        System.out.println("|         0...返回上级       |");
        System.out.println("|         1...借阅图书       |");
        System.out.println("|         2...归还图书       |");
        System.out.println("|         3...查询记录       |");
        System.out.println("-----------------------------");
        System.out.print("请输入选项:");
    }
    public static void main(String[] args) {
        App app = new App();
        app.run();
    }
}

  • 写回答

1条回答 默认 最新

  • pzzhao 2023-02-24 21:07
    关注

    方法名定义重复, systemMenu 方法不能放在run方法里面,要放在外面去定义

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 3月4日
  • 已采纳回答 2月24日
  • 修改了问题 2月24日
  • 修改了问题 2月24日
  • 展开全部

悬赏问题

  • ¥15 欧拉系统opt目录空间使用100%
  • ¥15 ul做导航栏格式不对怎么改?
  • ¥20 用户端如何上传图片到服务器和数据库里
  • ¥15 现在研究生在烦开题,看了一些文献,但不知道自己要做什么,求指导。
  • ¥30 vivado封装时总是显示缺少一个dcp文件
  • ¥100 pxe uefi启动 tinycore
  • ¥15 我pycharm运行jupyter时出现Jupyter server process exited with code 1,然后打开cmd显示如下
  • ¥15 可否使用carsim-simulink进行四轮独立转向汽车的联合仿真,实现四轮独立转向汽车原地旋转、斜向形式、横移等动作,如果可以的话在carsim中如何进行相应设置
  • ¥15 Caché 2016 在Java环境通过jdbc 执行sql报Parameter list mismatch错误,但是同样的sql使用连接工具可以查询出数据
  • ¥15 疾病的获得与年龄是否有关