万金流
初次使用博客园,目前感觉还不错。 不知不觉用了4年零4个月了,越来越喜欢博客园。

三个类

主程序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+"\t"+xm+"\t"+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("编号\t姓名\t年龄");
        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("输入选择:\n0、退出程序;\n1、添加学生信息;\n2、删除学生信息;\n3、修改学生信息;\n4、查询学生信息;");
            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

 

posted on 2020-09-21 17:34  万金流  阅读(407)  评论(0编辑  收藏  举报