java實(shí)現(xiàn)學(xué)生成績信息管理系統(tǒng)
JAVA大作業(yè):學(xué)生成績管理系統(tǒng)(含有用戶界面),供大家參考,具體內(nèi)容如下
ps :多個包寫在一起
package test;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.util.ArrayList;
class person{
public String name;
public String age;
}
class Student extends person{
public String no;
public String score1,score2,score3,score4;
public Student(String no, String name, String age,String score1,String score2,String score3,String score4) {
this.no = no;
this.name = name;
this.age = age;
this.score1 = score1;
this.score2 = score2;
this.score3 = score3;
this.score4 = score4;
}
public String getNo() {
return this.no;
}
public void setNo(String no) {
this.no = no;
}
public String getName() {
return this.name;
}
public void setName(String name) {
this.name = name;
}
public String getAge() {
return this.age;
}
public void setAge(String age) {
this.age = age;
}
public String getscore1() {
return this.score1;
}
public void setscore1(String score1) {
this.score1 = score1;
}
public String getscore2() {
return this.score2;
}
public void setscore2(String score2) {
this.score2 = score2;
}
public String getscore3() {
return this.score3;
}
public void setscore3(String score3) {
this.score3 = score3;
}
public String getscore4() {
return this.score4;
}
public void setscore4(String score4) {
this.score4 = score4;
}
}
class Class{
ArrayList<Student> stuList;
public Class(){
this.stuList=new ArrayList<>();
}
public void addStudent(Student stu){
this.stuList.add(stu);
}
public void deleteStudent(Student s){
this.stuList.remove(s);
}
}
class menu extends JFrame{
public menu()
{
this.setBounds(300, 150, 500, 450);
this.setTitle("大連海事大學(xué) -- --學(xué)生信息管理系統(tǒng)");
this.setLayout(null);
JLabel labTipw = new JLabel("歡迎進(jìn)入 大連海事大學(xué) 學(xué)生信息管理系統(tǒng)");
labTipw.setBounds(50, 2, 250, 45);
JLabel labTipws = new JLabel("(*新用戶初始密碼為 身份證后六位數(shù)字)");
labTipws.setBounds(50, 15, 250, 45);
JLabel labyonghu = new JLabel("用戶名:");
labyonghu.setBounds(50, 60, 100, 50);
JTextField txtyonghu = new JTextField("請輸入登錄用戶名:",30);
txtyonghu.setBounds(130, 76, 180, 30);
JLabel labmima = new JLabel("密碼:");
labmima.setBounds(50, 100, 50, 50);
JTextField txtmima = new JTextField("請輸入登錄6位密碼:",30);
txtmima.setBounds(130, 117, 180, 30);
JButton btndianji = new JButton("點(diǎn)擊登錄");
btndianji.setBounds(130, 165, 180, 30);
btndianji.setForeground(Color.BLUE);
this.add(labTipw);
this.add(labTipws);
this.add(labyonghu);
this.add(txtyonghu);
this.add(labmima);
this.add(txtmima);
this.add(btndianji);
btndianji.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
new StudentFrame();}
} );
setVisible(true);
}
}
public class StudentFrame extends JFrame {
Class c = new Class();
JLabel labNo;
JLabel labName;
JLabel labAge;
JLabel labscore1;
JLabel labscore2;
JLabel labscore3;
JLabel labscore4;
JLabel labTip;
JLabel labavr;
JTextField txtNo;
JTextField txtName;
JTextField txtAge;
JTextField txtscore1;
JTextField txtscore2;
JTextField txtscore3;
JTextField txtscore4;
JTextField txtavr;
JButton btnAdd;
JButton btnRemove;
JButton btnModify;
JButton btnClear;
JButton btnFirst;
JButton btnPrev;
JButton btnNext;
JButton btnLast;
JButton btnCheck;
JOptionPane dialog;
public StudentFrame() {
this.setBounds(300, 100, 650, 530);
this.setTitle("大連海事大學(xué) -- --學(xué)生信息管理系統(tǒng)");
this.setLayout(null);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
studentin();
addStu();
firstStudent();
lastStudent();
previous();
next();
remove();
check();
modify();
clear();
this.setVisible(true);
}
public void studentin() {
labTip = new JLabel("登陸成功 !您已經(jīng)進(jìn)入管理系統(tǒng)(僅輸入學(xué)號便可查找學(xué)生信息).");
labTip.setBounds(50, 2, 550, 45);
labNo = new JLabel("學(xué)生學(xué)號:");
labNo.setBounds(50, 20, 100, 50);
txtNo = new JTextField("請輸入6位學(xué)號:",30);
txtNo.setBounds(130, 35, 180, 30);
labName = new JLabel("學(xué)生姓名:");
labName.setBounds(50, 60, 100, 50);
txtName = new JTextField("請輸入學(xué)生姓名:",30);
txtName.setBounds(130, 76, 180, 30);
labAge = new JLabel("班級:");
labAge.setBounds(50, 100, 50, 50);
txtAge = new JTextField("請輸入學(xué)生所在班級:",30);
txtAge.setBounds(130, 117, 180, 30);
labscore1 = new JLabel("JAVA 成績:");
labscore1.setBounds(50, 140, 100, 50);
txtscore1 = new JTextField("請輸入學(xué)生成績:",30);
txtscore1.setBounds(130, 158, 180, 30);
labscore2 = new JLabel("C語言成績:");
labscore2.setBounds(50, 189, 100, 50);
txtscore2 = new JTextField("請輸入學(xué)生成績:",30);
txtscore2.setBounds(130, 199, 180, 30);
labscore3 = new JLabel("Python成績:");
labscore3.setBounds(50, 230, 100, 50);
txtscore3 = new JTextField("請輸入學(xué)生成績:",30);
txtscore3.setBounds(130, 240, 180, 30);
labscore4 = new JLabel("C++ 成績:");
labscore4.setBounds(50, 290, 100, 50);
txtscore4 = new JTextField("請輸入學(xué)生成績:",30);
txtscore4.setBounds(130, 301, 180, 30);
labavr = new JLabel("操作說明 ** |<< : 第一個學(xué)生信息 <:上一位學(xué)生信息 >:下一個學(xué)生信息 >>|:最后一個學(xué)生信息");
labavr.setBounds(50, 330, 580, 50);
btnAdd = new JButton("添加");
btnAdd.setBounds(50, 385, 80, 20);
btnAdd.setForeground(Color.BLACK);
btnModify = new JButton("修改");
btnModify.setBounds(150, 385, 80, 20);
btnModify.setForeground(Color.BLUE);
btnRemove = new JButton("刪除");
btnRemove.setBounds(250, 385, 80, 20);
btnRemove.setForeground(Color.RED);
btnClear = new JButton("清空");
btnClear.setBounds(350, 385, 80, 20);
btnClear.setForeground(Color.GREEN);
btnCheck = new JButton("查找信息");
btnCheck.setBounds(350, 145, 160, 50);
btnCheck.setForeground(Color.BLACK);
btnFirst = new JButton("|<<");
btnFirst.setBounds(50, 432, 80, 20);
btnFirst.setForeground(Color.PINK);
btnPrev = new JButton("<");
btnPrev.setBounds(150, 432, 80, 20);
btnPrev.setForeground(Color.BLACK);
btnNext = new JButton(">");
btnNext.setBounds(250, 432, 80, 20);
btnNext.setForeground(Color.BLACK);
btnLast = new JButton(">>|");
btnLast.setBounds(350, 432, 80, 20);
btnLast.setForeground(Color.PINK);
this.add(labNo);
this.add(labName);
this.add(labAge);
this.add(labscore1);
this.add(txtNo);
this.add(labTip);
this.add(txtName);
this.add(txtAge);
this.add(txtscore1);
this.add(btnAdd);
this.add(btnRemove);
this.add(btnModify);
this.add(btnClear);
this.add(btnFirst);
this.add(btnPrev);
this.add(btnNext);
this.add(btnLast);
this.add(btnCheck);
this.add(labavr);
this.add(labscore2);
this.add(txtscore2);
this.add(labscore3);
this.add(txtscore3);
this.add(labscore4);
this.add(txtscore4);
}
public boolean blank() {
if (txtNo.getText().equals("")) {
dialog.showMessageDialog(null, "學(xué)號輸入有誤 請重新輸入!");
return false;
}
if (txtName.getText().equals("")) {
dialog.showMessageDialog(null, "名字輸入有誤 請重新輸入!");
return false;
}
if (txtAge.getText().equals("")) {
dialog.showMessageDialog(null, "班級輸入有誤 請重新輸入!");
return false;
}if (txtscore1.getText().equals("")) {
dialog.showMessageDialog(null, "成績輸入有誤 請重新輸入!");
return false;
}if (txtscore2.getText().equals("")) {
dialog.showMessageDialog(null, "成績輸入有誤 請重新輸入!");
return false;
}
if (txtscore3.getText().equals("")) {
dialog.showMessageDialog(null, "成績輸入有誤 請重新輸入!");
return false;
}
if (txtscore4.getText().equals("")) {
dialog.showMessageDialog(null, "成績輸入有誤 請重新輸入!");
return false;
}
return true;
}
public void addStu() {
btnAdd.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
if (blank() == true) {
c.addStudent(new Student(txtNo.getText(), txtName.getText(), txtAge.getText(),txtscore1.getText(),txtscore2.getText(),txtscore3.getText(),txtscore4.getText()));
dialog.showMessageDialog(null, "學(xué)生信息已添加成功");
}}});
}
public void firstStudent() {
btnFirst.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
txtNo.setText(c.stuList.get(0).getNo());
txtName.setText(c.stuList.get(0).getName());
txtAge.setText(c.stuList.get(0).getAge());
txtscore1.setText(c.stuList.get(0).getscore1());
txtscore2.setText(c.stuList.get(0).getscore2());
txtscore3.setText(c.stuList.get(0).getscore3());
txtscore4.setText(c.stuList.get(0).getscore4());
}
});
}
public void lastStudent() {
btnLast.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
txtNo.setText(c.stuList.get(c.stuList.size() - 1).getNo());
txtName.setText(c.stuList.get(c.stuList.size() - 1).getName());
txtAge.setText(c.stuList.get(c.stuList.size() - 1).getAge());
txtscore1.setText(c.stuList.get(c.stuList.size() - 1).getscore1());
txtscore2.setText(c.stuList.get(c.stuList.size() - 1).getscore2());
txtscore3.setText(c.stuList.get(c.stuList.size() - 1).getscore3());
txtscore4.setText(c.stuList.get(c.stuList.size() - 1).getscore4());
}
});
}
public void previous() {
btnPrev.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
int n = 0;
for (int i = 0; i < c.stuList.size(); i++) {
if (c.stuList.get(i).getNo().equals(txtNo.getText())) {
n = i - 1;
}
}
if (c.stuList.get(0).getNo().equals(txtNo.getText())) {
dialog.showMessageDialog(null, "再無上一個學(xué)生");
} else {
txtNo.setText(c.stuList.get(n).getNo());
txtName.setText(c.stuList.get(n).getName());
txtAge.setText(c.stuList.get(n).getAge());
txtscore1.setText(c.stuList.get(n).getscore1());
txtscore2.setText(c.stuList.get(n).getscore2());
txtscore3.setText(c.stuList.get(n).getscore3());
txtscore4.setText(c.stuList.get(n).getscore4());
}
}
});
}
public void next() {
btnNext.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
int n = 0;
for (int i = 0; i < c.stuList.size(); i++) {
if (c.stuList.get(i).getNo().equals(txtNo.getText())) {
n = i + 1;
}
}
if (c.stuList.get(c.stuList.size() - 1).getNo().equals(txtNo.getText())) {
dialog.showMessageDialog(null, "再無下一個學(xué)生");
} else {
txtNo.setText(c.stuList.get(n).getNo());
txtName.setText(c.stuList.get(n).getName());
txtAge.setText(c.stuList.get(n).getAge());
txtscore1.setText(c.stuList.get(n).getscore1());
txtscore2.setText(c.stuList.get(n).getscore2());
txtscore3.setText(c.stuList.get(n).getscore3());
txtscore4.setText(c.stuList.get(n).getscore4());}
}
});
}
public void remove() {
btnRemove.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
if (c.stuList.size() == 0) {
JOptionPane.showMessageDialog(null, "沒有該學(xué)生信息");
} else {
Student s = new Student(txtNo.getText(), txtName.getText(), txtAge.getText(),txtscore1.getText(),txtscore2.getText(),txtscore3.getText(),txtscore4.getText());
if (blank() == true) {
System.out.println(c.stuList.contains(s));
System.out.println(s);
if (!c.stuList.contains(s)) {
c.deleteStudent(s);
JOptionPane.showMessageDialog(null, "已經(jīng)刪除成功");
int a = 0;
for (int i = 0; i < c.stuList.size(); i++) {
if (c.stuList.get(i).getNo().equals(txtNo.getText())) {
a = i + 1;
}
}
if (c.stuList.size() > 0) {
if (c.stuList.get(c.stuList.size() - 1).getNo().equals(txtNo.getText())) {
txtNo.setText(c.stuList.get(0).getNo());
txtName.setText(c.stuList.get(0).getName());
txtAge.setText(c.stuList.get(0).getAge());
txtscore1.setText(c.stuList.get(0).getscore1());
txtscore2.setText(c.stuList.get(0).getscore2());
txtscore3.setText(c.stuList.get(0).getscore3());
txtscore4.setText(c.stuList.get(0).getscore4());
} else {
txtNo.setText(c.stuList.get(a).getNo());
txtName.setText(c.stuList.get(a).getName());
txtAge.setText(c.stuList.get(a).getAge());
txtscore1.setText(c.stuList.get(a).getscore1());
txtscore2.setText(c.stuList.get(a).getscore2());
txtscore3.setText(c.stuList.get(a).getscore3());
txtscore4.setText(c.stuList.get(a).getscore4());
}
} else {
clear();
}
} else {
dialog.showMessageDialog(null, "未來找到對應(yīng)學(xué)生的信息"); }}
}
}
});
}
public void modify() {
btnModify.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
if (c.stuList.size() == 0) {
dialog.showMessageDialog(null, "沒有該學(xué)生信息");
}
for (Student s : c.stuList) {
if (s.getNo().equals(txtNo.getText())) {
if (blank() == true) {
s.setName(txtName.getText());
s.setAge(txtAge.getText());
JOptionPane.showMessageDialog(null, "已經(jīng)修改成功");
return;
}
}
}
JOptionPane.showMessageDialog(null, "修改失敗請重新操作");
}
});
}
public void check() {
btnCheck.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
if ((txtNo.getText().equals(""))) {
dialog.showMessageDialog(null, "學(xué)號不能為空 請從新輸入");
} else {
int m = 0;
for (int i = 0; i < c.stuList.size(); i++) {
if (c.stuList.get(i).getNo().equals(txtNo.getText())) {
JOptionPane.showMessageDialog(null, "已查到該學(xué)生信息");
txtName.setText(c.stuList.get(i).getName());
txtAge.setText(c.stuList.get(i).getAge());
txtscore1.setText(c.stuList.get(i).getscore1());
txtscore2.setText(c.stuList.get(i).getscore2());
txtscore3.setText(c.stuList.get(i).getscore3());
txtscore4.setText(c.stuList.get(i).getscore4());
break;}
m++;}
if (m == c.stuList.size()) {
dialog.showMessageDialog(null, "沒有此學(xué)生的相關(guān)信息");
return; }
}
}
});
}
public void clear() {
btnClear.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
txtNo.setText("");
txtName.setText("");
txtAge.setText("");
txtscore1.setText("");
txtscore2.setText("");
txtscore3.setText("");
txtscore4.setText("");
}
}
);
}
public static void main(String[] args) {
new menu();
}
}
關(guān)于管理系統(tǒng)的更多內(nèi)容請點(diǎn)擊《管理系統(tǒng)專題》進(jìn)行學(xué)習(xí)
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- java實(shí)現(xiàn)學(xué)生成績檔案管理系統(tǒng)
- Java?GUI實(shí)現(xiàn)學(xué)生成績管理系統(tǒng)
- java學(xué)生成績管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
- java實(shí)現(xiàn)學(xué)生成績錄入系統(tǒng)
- Java模擬登錄正方教務(wù)抓取成績、課表、空教室
- java用list集合存儲學(xué)生信息并算出成績平均值操作
- Eclipse+Java+Swing實(shí)現(xiàn)學(xué)生成績管理系統(tǒng)的實(shí)例代碼
- Java實(shí)現(xiàn)學(xué)生成績管理系統(tǒng)
- Java利用條件運(yùn)算符的嵌套來完成學(xué)習(xí)成績的劃分
- java實(shí)現(xiàn)簡單學(xué)生成績檔案管理系統(tǒng)
相關(guān)文章
MyBatis Plus 實(shí)現(xiàn)多表分頁查詢功能的示例代碼
這篇文章主要介紹了MyBatis Plus 實(shí)現(xiàn)多表分頁查詢功能,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-08-08
SpringBoot中關(guān)于static和templates的注意事項(xiàng)以及webjars的配置
今天小編就為大家分享一篇關(guān)于SpringBoot中關(guān)于static和templates的注意事項(xiàng)以及webjars的配置,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧2019-01-01
java實(shí)現(xiàn)向有序數(shù)組中插入一個元素實(shí)例
本篇文章主要介紹了java實(shí)現(xiàn)向有序數(shù)組中插入一個元素實(shí)例,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-05-05
詳解Spring Cloud Gateway 數(shù)據(jù)庫存儲路由信息的擴(kuò)展方案
這篇文章主要介紹了詳解Spring Cloud Gateway 數(shù)據(jù)庫存儲路由信息的擴(kuò)展方案,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-11-11
Java語言實(shí)現(xiàn)簡單FTP軟件 FTP上傳下載管理模塊實(shí)現(xiàn)(11)
這篇文章主要為大家詳細(xì)介紹了Java語言實(shí)現(xiàn)簡單FTP軟件,F(xiàn)TP本地文件管理模塊的實(shí)現(xiàn)方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-04-04
java與JSON數(shù)據(jù)的轉(zhuǎn)換實(shí)例詳解
這篇文章主要介紹了java與JSON數(shù)據(jù)的轉(zhuǎn)換實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下2017-03-03

