JButton btndelete;
Hashtable ht;
Vector colnames;
JLabel lblno;
JLabel lblname;
JLabel lblscore;
JTextField addno;
JTextField addname;
JTextField addscore;
Vector data;
public HashTest() throws HeadlessException {
super("学生成绩管理");
ht = new Hashtable();
lblsearchbyidorname = new JLabel("学号:");
txfidorname = new JTextField(20);
lblno = new JLabel("学号");
lblname = new JLabel("姓名");
lblscore = new JLabel("分数");
addno = new JTextField(10);
addname = new JTextField(12);
addscore = new JTextField(10);
btnsearchbyidorname = new JButton("查找--");
btnadd = new JButton("新增");
btndelete = new JButton("删除");
colnames = new Vector();
colnames.add("学号");
colnames.add("姓名");
colnames.add("成绩");
data = https://www.04ip.com/post/new Vector();
reader = new JTable(new ReaderTableModel(data,colnames));
reader.setPreferredSize(new Dimension(700,260));
JPanel pnlsearch = new JPanel();
pnlsearch.add(lblsearchbyidorname);
pnlsearch.add(txfidorname);
pnlsearch.add(btnsearchbyidorname);
pnlsearch.add(btndelete);
JScrollPane scptable = new JScrollPane(reader,
ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED,
ScrollPaneConstants.HORIZONTAL_SCROLLBAR_ALWAYS);
JPanel pnladd = new JPanel();
pnladd.add(lblno);
pnladd.add(addno);
pnladd.add(lblname);
pnladd.add(addname);
pnladd.add(lblscore);
pnladd.add(addscore);
pnladd.add(btnadd);
reader.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
ScoreHandler sh = new ScoreHandler();
btnadd.addActionListener(sh);
btndelete.addActionListener(sh);
btnsearchbyidorname.addActionListener(sh);
Container c = getContentPane();
c.add(pnlsearch,BorderLayout.NORTH);
c.add(scptable,BorderLayout.CENTER);
c.add(pnladd,BorderLayout.SOUTH);
setSize(600,400);
setVisible(true);
}
public static void main(String[] args) {
new HashTest();
}
class ScoreHandler implements ActionListener{
public void actionPerformed(ActionEvent e) {
JButton btn = (JButton)e.getSource();
if(btn == btnsearchbyidorname){
Object obj = ht.get(txfidorname.getText().trim());
if(obj == null){
JOptionPane.showMessageDialog(null,"没有找到!");
}else{
JOptionPane.showMessageDialog(null,"查询结果如下:\n" + obj.toString());
}
}else if(btn == btnadd){
Student stu = new Student();
stu.setName(addname.getText().trim());
stu.setNo(addno.getText().trim());
stu.setScore(Integer.valueOf(addscore.getText().trim()));
ht.put(stu.getNo(),stu);
addDataToTable(stu);
addname.setText("");
addno.setText("");
addscore.setText("");
}else if(btn == btndelete){
int index = reader.getSelectedRow();
if (index == -1){
JOptionPane.showMessageDialog(null,"你没有选择学生!");
}else{
String no = (String)reader.getValueAt(index,0);
Student stu = (Student)ht.remove(no);
JOptionPane.showMessageDialog(null,"学生成绩删除!\n" + stu.toString());
data.remove(index);
reader.repaint();
}
}
}
}
public void addDataToTable(Student stu){
Vector temp = new Vector();
temp.add(stu.getNo());
temp.add(stu.getName());
temp.add(stu.getScore());
data.add(temp);
reader.repaint();
}
}
JAVA创建一个哈希表储存数据并输出,要完整代码我就不写了,给个提示吧:
建一个类,名字就叫员工,它有三个属性 , 分别是你要的三个数据,名字、工龄、工号 。然后,每次put的时候这样:put('1234',员工1);以员工工号为key,类员工为value
推荐阅读
- ChatGPT商用,chatGPT商用版免授权源码下载
- flutter安卓失败,flutter安卓和ios ui一致吗
- 提取html中的代码,获取html内容
- 伤残直播话术,助残直播
- mysql怎么给表赋值 mysql表里添加数据语句
- C语言中源程序名的后缀是,c 语言源程序名的后缀是
- 什么手机适合拍摄,什么手机拍摄最好
- dw中更改css链接颜色,dw怎么改链接字体颜色
- c语言调用函数求n次方 c语言求n次方的函数