鱼C论坛

 找回密码
 立即注册
查看: 1619|回复: 3

有大佬看看这个1代码为什么运行不了吗?

[复制链接]
发表于 2021-12-22 21:14:37 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
import java.util.Scanner;

public class work01 {
        //本金
        private static int principal = 1000;
        //记录语句
        private static String record = "\n收支明细\t\t账户金额\t\t收支金额\t\t说    明\n----\t\t"+principal+"\t\t----\t\t本    金\n";
        //用于保存记录语句
        private static StringBuffer sb = new StringBuffer();
        //创建输入对象
        private static Scanner sc = new Scanner(System.in);
       
        /**
         *  主方法
         * @param args
         */
        public static void main(String[] args) {
                // 将语句加到StringBuffer对象sb里
                sb.append(record);
                // 定义循环标志位,用于退出时跳出循环
                boolean loopFlag = true;
                do {
                        // 显示菜单
                        view();
                        // 接收菜单选项的编号
                        int menuCode = getMenuCode();
                        // 选择菜单执行相应内容
                        switch(menuCode) {
                                case 1:
                                        // 打印收支明细
                                        System.out.println(sb);
                                        break;
                                case 2:
                                        // 添加收入记录
                                        selectSecond();
                                        break;
                                case 3:
                                        // 添加支出记录
                                        selectThird();
                                        break;
                                case 4:
                                        // 退出系统
                                        System.out.print("是否确认退出(Y/N):");
                                        // 接收字符Y或N
                                        char c = getYesOrNo();
                                        // 接收到Y时给循环标志位赋值False跳出循环退出系统
                                        if(c=='Y') loopFlag = false;
                                        break;
                        }
                } while (loopFlag );

        }
       
        /**
         * 打印菜单信息
         */
        public static void view() {
                System.out.println("\n-------------------------------家庭收支记账软件-------------------------------\n");
                System.out.println("                                 1.收支明细");
                System.out.println("                                 2.收入金额");
                System.out.println("                                 3.支出金额");
                System.out.println("                                 4.退       出\n");
                System.out.print("请输入选择序号:");
        }
       
        /**
         * 获取数字
         * @return
         */
        public static int getNumber() {
                int num = -1;
                // 判断是否有输入
                while(sc.hasNext()) {
                        // 输入是否为int类型
                        if (sc.hasNextInt()) {
                                // 接收输入的数字
                                num = sc.nextInt();
                                break;
                        }else {
                                System.out.print("没有所选项,请重新输入:");
                                // 输入
                                sc.next();
                        }
                }
                return num;
        }
       
        /**
         * 获取菜单选项序号
         * @return
         */
        public static int getMenuCode() {
                int menuCode;
                for(;;) {
                        // 调用getNumber()方法接收数字
                        menuCode = getNumber();
                        // 判断数字是否为1 2 3 4
                        if (menuCode==1 || menuCode==2 || menuCode==3 || menuCode==4) {
                                break;
                        }else {
                                System.out.print("没有所选项,请重新输入:");
                        }
                }
                return menuCode;
        }
       
        /**
         * 获取字母Y  N
         * @return
         */
        public static char getYesOrNo() {
                char c;
                for(;;) {
                        // sc.next() 接收字符串    toUpperCase() 字符串转大写  charAt(0) 截取第一个字符
                        c = sc.next().toUpperCase().charAt(0);
                        // 判断截取字符是否为Y  N
                        if ('Y' == c || 'N' == c) {
                                break;
                        }else {
                                System.out.print("没有所选项,请重新输入:");
                        }
                }
                return c;
        }
       
        /**
         * 添加收入记录
         */
        public static void selectSecond() {
                System.out.print("收入金额:");
                // 收入金额
                int income = getNumber();
                // 本金 = 本金 + 支出金额
                principal += income;
                System.out.print("说       明:");
                // 说明文字
                String des = sc.next();
                String str = "  收入\t\t"+principal+"\t\t"+income+"\t\t"+des+"\n";
                sb.append(str);
        }
       
        /**
         * 添加支出记录
         */
        public static void selectThird() {
                System.out.print("支出金额:");
                // 支出金额
                int outlay = getNumber();
                // 本金 = 本金 - 支出金额
                principal -= outlay;
                System.out.print("说       明:");
                // 说明文字
                String des = sc.next();
                String str = "  收入\t\t"+principal+"\t\t"+outlay+"\t\t"+des+"\n";
                sb.append(str);
        }
               
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-12-23 11:08:04 From FishC Mobile | 显示全部楼层
.
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2021-12-24 08:35:49 | 显示全部楼层
搞定了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-12-26 11:43:12 | 显示全部楼层
代码没有问题
import java.util.Scanner;
上面是不是少package 路径。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-22 14:26

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表