RecordManagement

import java.io.*;
import java.util.*;

public class CutImage {
    // 记录当前id
    static int record_ID = 0;
    // 存储结构
    static ArrayList<String> array = new ArrayList<String>();

    /*------录入工资------*/
    public static void InputRecord(String str) {
        int i;
        boolean montherr = false, salaryerr = false;
        // 存储字段
        String name = "";
        String month = "";
        String salary = "";
        // 读取姓名
        for (i = 6; i < str.length(); i++) {
            char temp = str.charAt(i);
            if (temp == ' ') {
                i++;
                break;
            } else {
                name = name + temp;
            }
        }
        // 读取月份
        int month_int = 0;
        for (; i < str.length(); i++) {
            char temp = str.charAt(i);
            if (temp == ' ') {
                i++;
                break;
            }
            // 判定输入是否为数字
            else if (!Character.isDigit(temp)) {
                montherr = true;
            } else {
                month_int = month_int * 10 + temp - '0';
                month = month + temp;
            }
        }
        // 判定月份是否在正常范围内
        if (month_int > 12 || month_int < 1) {
            montherr = true;
        }
        // 读取工资
        for (; i < str.length(); i++) {
            char temp = str.charAt(i);
            if (temp == ' ') {
                i++;
                break;
            }
            // 判定输入是否为数字
            else if (!Character.isDigit(temp)) {
                salaryerr = true;
            } else {
                salary = salary + temp;
            }
        }
        // 处理输出结果
        if (name == null || month == null || salary == null) {
            System.out.println("输入数据不完整");
        } else if (montherr) {
            System.out.println("输入的月份有误");
        } else if (salaryerr) {
            System.out.println("输入的工资有误");
        } else {
            Calendar c = Calendar.getInstance();// 获取时间
            int hour = c.get(Calendar.HOUR_OF_DAY);
            int minute = c.get(Calendar.MINUTE);
            int second = c.get(Calendar.SECOND);
            String record = Integer.toString(record_ID + 1) + "_" + name + "_" + month + "_" + salary + " " + hour + ":"
                    + minute + ":" + second;
            array.add(record);
            record_ID++;
            System.out.println(array.get(record_ID - 1));
        }
    }

    /*------查询N条------*/
    /*
     * 只输入list-n 尚未完善
     */
    public static void QurryRecord(String str) {
        // 读取数字
        boolean numerr = false;
        int num = 0;
        int i;
        for (i = 8; i < str.length(); i++) {
            char temp = str.charAt(i);

            // 判定输入是否为数字
            if (!Character.isDigit(temp)) {
                numerr = true;
            } else {
                num = num * 10 + temp - '0';
            }
        }
        if (numerr) {
            System.out.println("输入的格式有误");
        } else {
            if (num > array.size())
                num = array.size();
            for (i = num - 1; i >= 0; i--) {
                System.out.println(array.get(i));
            }
        }
    }

    /*------删除某条------*/
    /*
     * 只输入del 尚未完善
     */
    public static void DeleteRecord(String str) {
        // 读取数字
        boolean numerr = false, isExist = false;
        int num = 0;
        int i;
        for (i = 4; i < str.length(); i++) {
            char temp = str.charAt(i);
            // 判定输入是否为数字
            if (!Character.isDigit(temp)) {
                numerr = true;
            } else {
                num = num * 10 + temp - '0';
            }
        }
        if (numerr) {
            System.out.println("输入的格式有误");
        } else if (num > record_ID) {
            System.out.println("该记录不存在,无法删除");
        } else {
            for (i = 0; i < array.size(); i++) {
                if (array.get(i).startsWith(num + "_")) {
                    isExist = true;
                    array.remove(i);
                    System.out.println("成功");
                }
            }
            if (isExist == false) {
                System.out.println("该记录不存在,无法删除");
            }
        }
    }

    /*------主函数------*/
    public static void main(String args[]) {

        Scanner sc = new Scanner(System.in);
        // String str=null;
        int cnt = 50;
        while (cnt >= 0) {
            String str = "";
            str = sc.nextLine();
            if (str.startsWith("input ")) {
                InputRecord(str);
            } else if (str.startsWith("list -n ")) {
                QurryRecord(str);
            } else if (str.startsWith("del ")) {
                DeleteRecord(str);
            } else {
                System.out.println("输入指令不正确");
            }
            cnt--;
        }
        sc.close();
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值