zoukankan      html  css  js  c++  java
  • 学生数据增删改查--顺序表

    三个类

    主程序c1.java:

    package p1;
    
    import java.util.Scanner;
    
    public class c1
    {
        static Scanner scan = new Scanner(System.in);
    
        public static void main(String[] args)
        {
            // TODO Auto-generated method stub
            z();
            StudLine.show();
        }
    
        static void z()
        {
            Student t = new Student();
            System.out.println("输入id");
            t.id = scan.nextInt();
            System.out.println("输入姓名");
            t.xm = scan.next();
            System.out.println("输入年龄");
            t.nl = scan.nextInt();
            StudLine.add(t);
        }
    
        static void s()
        {
            int t;
            System.out.println("输入id");
            t = scan.nextInt();
            StudLine.del(t);
        }
    
        static void g()
        {
            Student t = new Student();
            System.out.println("输入id");
            t.id = scan.nextInt();
            System.out.println("输入姓名");
            t.xm = scan.next();
            System.out.println("输入年龄");
            t.nl = scan.nextInt();
            StudLine.modi(t);
        }
    
        static void c()
        {
            System.out.println("输入id");
            int t = scan.nextInt();
            for (int i = 0; i <= StudLine.p; i++)
            {
                if (StudLine.s[i].id == t)
                {
                    StudLine.s[i].showMe();
                    break;
                }
            }
        }
    }

    学生模型(student.java)

    package p1;
    
    public class Student
    {
        public int id;
        public String xm;
        public int nl;
        public void showMe()
        {
            System.out.println(id+"	"+xm+"	"+nl);
        }
    }

    学生线性表(StudLine.java)

    package p1;
    
    public class StudLine
    {
        static Student[] s=new Student[20];
        static int p=-1;
        public static void add(Student t)
        {
            p++;
            s[p]=t;
        }
        public static void del(int _id)
        {
            for (int i = 0; i <=p; i++)
            {
                if(s[i].id==_id)
                {
                    move(i);
                    break;
                }
            }
        }
        public static void modi(Student t)
        {
            for (int i = 0; i <=p; i++)
            {
                if(s[i].id==t.id)
                {
                    s[i]=t;
                    break;
                }
            }
        }
        public static void select(int _id)
        {
            for (int i = 0; i <=p; i++)
            {
                if(s[i].id==_id)
                {
                    s[i].showMe();
                    break;
                }
            }
        }
        public static void show()
        {
            System.out.println("编号	姓名	年龄");
            for (int i = 0; i <=p; i++)
            {
                s[i].showMe();
            }
        }
        private static void move(int t)
        {
            for (int i = t; i <p; i++)
            {
                s[i]=s[i+1];
            }
            p--;
        }
    }

     按照MVC的思路做好上面的程序之后,可以在c1里调试各个功能模块。

    按照书上程序的要求,在主程序c1里添加上循环的控制部分。c1代码如下:

    int choice;
            do
            {
                System.out.println("输入选择:
    0、退出程序;
    1、添加学生信息;
    2、删除学生信息;
    3、修改学生信息;
    4、查询学生信息;");
                choice = scan.nextInt();
                if (choice == 1)
                {
                    z();
                }
                else if (choice == 2)
                {
                    s();
                }
                else if (choice == 3)
                {
                    g();
                }
                else if (choice == 4)
                {
                    c();
                }
                StudLine.show();
            } while (choice != 0);

    程序运行结果:

    输入选择:
    0、退出程序;
    1、添加学生信息;
    2、删除学生信息;
    3、修改学生信息;
    4、查询学生信息;
    1
    输入id
    1
    输入姓名
    zs
    输入年龄
    20
    编号    姓名    年龄
    1       zs      20
    输入选择:
    0、退出程序;
    1、添加学生信息;
    2、删除学生信息;
    3、修改学生信息;
    4、查询学生信息;
    1
    输入id
    2
    输入姓名
    ls
    输入年龄
    18
    编号    姓名    年龄
    1       zs      20
    2       ls      18
    输入选择:
    0、退出程序;
    1、添加学生信息;
    2、删除学生信息;
    3、修改学生信息;
    4、查询学生信息;
    1
    输入id
    3
    输入姓名
    ww
    输入年龄
    19
    编号    姓名    年龄
    1       zs      20
    2       ls      18
    3       ww      19
    输入选择:
    0、退出程序;
    1、添加学生信息;
    2、删除学生信息;
    3、修改学生信息;
    4、查询学生信息;
    2
    输入id
    2
    编号    姓名    年龄
    1       zs      20
    3       ww      19
    输入选择:
    0、退出程序;
    1、添加学生信息;
    2、删除学生信息;
    3、修改学生信息;
    4、查询学生信息;
    3
    输入id
    3
    输入姓名
    ww
    输入年龄
    100
    编号    姓名    年龄
    1       zs      20
    3       ww      100
    输入选择:
    0、退出程序;
    1、添加学生信息;
    2、删除学生信息;
    3、修改学生信息;
    4、查询学生信息;
    4
    输入id
    3
    3       ww      100
    编号    姓名    年龄
    1       zs      20
    3       ww      100
    输入选择:
    0、退出程序;
    1、添加学生信息;
    2、删除学生信息;
    3、修改学生信息;
    4、查询学生信息;
    0
    编号    姓名    年龄
    1       zs      20
    3       ww      100
  • 相关阅读:
    java.lang.ClassCastException: java.util.HashMap$Values cannot be cast to java.util.List 转换异常
    React Swiper轮播图(二)
    超详细带你入门开发一个超实用的浏览器插件
    手臂太细如何增加纬度?这5个手臂锻炼动作,让你的手臂变粗壮
    2021百度世界大会精华总结(AI应用向)
    1、saltstack 安装部署
    MySQL的varchar(10)能存多少个汉字
    学习资料总结
    基于Spark的数据工厂(Data Factory):从设计到实现
    IntelliJ IDEA创建maven web项目(IDEA新手适用)
  • 原文地址:https://www.cnblogs.com/wanjinliu/p/13680332.html
Copyright © 2011-2022 走看看