控制台信息管理系统

该博客展示了一个简单的Java信息管理系统,包括对学生信息进行增删改查的操作,并实现了数据的txt文件导入导出。在处理数据导入导出时,需要注意数据类型匹配。此外,系统还提供了异常处理,如输入验证,确保成绩和年龄的有效性。
摘要由CSDN通过智能技术生成

进行简单的增删改查

txt导入 导出

因为数据的导入导出数据类型不匹配会报错

如果数据类形都是doulbe和int 导入导出修改数据类型即可

Javabean生成

package UniTest;

import java.util.Scanner;

public class UsesT {
    String sex;
    String name;
    int age;
    Long Sid;
    Double grade;

    @Override
    public String toString() {
        return "UsesT{" +
                "sex='" + sex + '\'' +
                ", name='" + name + '\'' +
                ", age=" + age +
                ", Sid=" + Sid +
                ", grade=" + grade +
                '}';
    }

    public Long getSid() {
        return Sid;
    }

    public void setSid(Long sid) {
        Sid = sid;
    }

    public Double getGrade() {
        return grade;
    }

    public void setGrade(Double grade) {
        if (grade<0||grade>100){
            System.out.println ("成绩输入错误");
            System.out.println ("重新输入");
            Scanner scanner=new Scanner (System.in);
            this.grade=scanner.nextDouble ();
        }else {
            this.grade=grade;


        }
    }

    public String getSex() {
        return sex;
    }

    public void setSex(String sex) {
        if (sex=="男"||sex=="女"){
            this.sex = sex;

        }else{
//          this.sex="男";
            System.out.println ("输入错误,请添加后修改");
            Scanner scanner=new Scanner (System.in);
            System.out.println ("重新输入");
            this.sex=scanner.next ();
        }

    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {

        return age;
    }

    public void setAge(int age) {
        if (age<0||age>100){
            System.out.println ("年龄不符合");
            Scanner scanner=new Scanner (System.in);

            this.age = scanner.nextInt ();
        } else{

            this.age = age;}
    }
}

主界面

package UniTest;


import javax.sound.midi.Soundbank;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Scanner;


public class DoMain {
    public static void main(String[] args) throws Exception {
        SimpleDateFormat sdf=new SimpleDateFormat ("yyyy-MM-dd HH:mm:ss");

        ArrayList<UsesT> arrayList  =new ArrayList<> ();
        Scanner sc=new Scanner (System.in);
        ThrowT throwT=new ThrowT ();
        throwT.firstadd (arrayList);

        boolean f=true;

        while (f){
            System.out.println ("*******扣丁狼信息管理系统****");
            System.out.println ("===="+sdf.format (System.currentTimeMillis ())+"===");
            System.out.println ("=            1.增加       =");
            System.out.println ("=            2.删除       =");
            System.out.println ("=            3.修改       =");
            System.out.println ("=            4.查询       =");
            System.out.println ("=            5.写入txt    =");
            System.out.println ("=            6.读取txt    =");
            System.out.println ("======0.退出========");
            System.out.println ("======请选择功能=====");
            int flat=sc.nextInt ();

                    switch (flat){
                        case 1: ThrowT t=new ThrowT ();
                        ThrowT.add (arrayList);
                            break;
                        case 2:
                            ThrowT.delete (arrayList);
                            break;
                        case 3:ThrowT.update (arrayList);
                            break;
                        case 4:ThrowT.find (arrayList);
                            break;
                        case 5:ThrowT.ioinput (arrayList);
                            break;
                        case 6:ThrowT.ioout (arrayList);
                            break;
                        case 0: System.exit (0);
                            break;
                        default:
                            System.out.println ("erroneus");
            }
        }
    }
}

方法区:

package UniTest;

import java.io.*;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Scanner;

public class ThrowT {
    public void firstadd(ArrayList<UsesT> list) {
        UsesT usesT = new UsesT ();
        usesT.setAge (22);
        usesT.setName ("李子");
        usesT.setSex ("男");
        usesT.setGrade (34.3);
        usesT.setSid (5754L);

        list.add (usesT);
        System.out.println (Arrays.toString (list.toArray ()));
        System.out.println ();
    }

    public static void add(ArrayList<UsesT> list) {
        Scanner s = new Scanner (System.in);
        System.out.println ("请输入SID");
        Long sid = s.nextLong ();
        int index = -1;
        for (int i = 0; i < list.size (); i++) {
            UsesT usesT = list.get (i);
            if (usesT.getSid ().equals (sid)) {
                index = i;

            }
            if (index == -1) {
                System.out.println ("name");
                usesT.setName (s.next ());
                System.out.println ("sex");
                usesT.setSex (s.next ());

                System.out.println ("age");
                usesT.setAge (s.nextInt ());
//                System.out.println ("setsid-");

                usesT.setSid (sid);
                System.out.println ("setGrade");
                usesT.setGrade (Double.valueOf (s.next ()));
                list.add (usesT);

                System.out.println (Arrays.toString (list.toArray ()));
                System.out.println (" ");
            } else {
                System.out.println ("Error,can't repale");
                break;
            }
        }
    }

    public static void delete(ArrayList<UsesT> list) {
        Scanner s = new Scanner (System.in);
        System.out.println ("delete name");
        String sid = s.next ();
        int index = -1;
        for (int i = 0; i < list.size (); i++) {
            UsesT usesT = list.get (i);
            if (usesT.getName ().equals (sid)) {
                index = i;
            }
            if (index == -1) {
                System.out.println ("NO find this name");

            } else {
                list.remove (i);
                System.out.println ("delete success");
                break;
            }

        }

    }

    public static void update(ArrayList<UsesT> list) {

        Scanner s = new Scanner (System.in);
        System.out.println ("updata name messiage");
        String sid = s.next ();
        int index = -1;
        for (int i = 0; i < list.size (); i++) {
            UsesT usesT = list.get (i);
            if (usesT.getName ().equals (sid)) {
                index = i;
            }
            if (index == -1) {
                System.out.println ("no find messiage");
            } else {
                System.out.println ("input name sex age sid grade");
                usesT.setName (s.next ());
                usesT.setSex (s.next ());
                usesT.setAge (s.nextInt ());
                usesT.setSid (s.nextLong ());
                usesT.setGrade (Double.valueOf (s.next ()));
                list.add (usesT);
                System.out.println ("success");

                break;
            }

        }

    }

    public static void find(ArrayList<UsesT> list) {
        Scanner s = new Scanner (System.in);
        System.out.println ("delete name");
        String sid = s.next ();
        int index = -1;
        for (int i = 0; i < list.size (); i++) {
            UsesT usesT = list.get (i);
            if (usesT.getName ().equals (sid)) {
                index = i;
            }
            if (index == -1) {
                System.out.println ("NO find this name");

            } else {
                System.out.println (Arrays.deepToString (list.toArray (new UsesT[i])));
                System.out.println ("find success");
                break;
            }

        }

    }

    public static void ioinput(ArrayList<UsesT> list) throws IOException {
        String file = "Testinput.txt";
        BufferedWriter bw = new BufferedWriter (new FileWriter (file));

        for (int i = 0; i < list.size (); i++) {
            String sex = list.get (i).getSex ();
            String name = list.get (i).getName ();
            int age = list.get (i).getAge ();
            Long Sid = list.get (i).getSid ();
            Double grade = list.get (i).getGrade ();

//            bw.write (name.getBytes ());
            bw.write (name+',');
            bw.write (sex+',');
            bw.write (age+',');
            bw.write (String.valueOf ((Sid)+','));
            bw.write (String.valueOf (grade+','));
            bw.newLine ();
        }
        bw.close ();

    }

    public static void ioout(ArrayList<UsesT> list) throws IOException {
        String file = "Testinput.txt";
        BufferedReader br=new BufferedReader (new FileReader (file));
        String line;
        while ((line=br.readLine ())!=null){
            String[] strArray=line.split (",");
            UsesT usesT=new UsesT ();
            usesT.setName (strArray[0]);
            usesT.setSex (strArray[1]);
            usesT.setAge (Integer.parseInt (strArray[2]));
            usesT.setSid (new Long (strArray[3]));
            usesT.setGrade (Double.valueOf (strArray[4]));
            list.add (usesT);
        }
        br.close ();
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

在下叶良__

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值