// 往表里存姓名,然后可以查找。这里用的list,存进去,然后找。
// linkedlist的效率比arraylist效率要高
package ch22;
import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.LinkedList;
import java.util.List;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JTextArea;
import javax.swing.JTextField;
public class Exec22_09 extends JFrame ... {
public Exec22_09() ...{
final List list = new LinkedList();
JButton soLabel = new JButton("查询结果");
JLabel name = new JLabel("姓名列表");
final JTextField result = new JTextField(15);
final JTextField inputFd = new JTextField(15);
final JTextField soFd = new JTextField(15);
JButton addBt = new JButton("增加名字");
JButton soBt = new JButton("搜索名字");
final JTextArea outputArea = new JTextArea(10, 23);
Container c = getContentPane();
c.setLayout(new FlowLayout());
c.add(inputFd);
c.add(addBt);
c.add(soFd);
c.add(soBt);
c.add(result);
result.setEditable(false);
c.add(soLabel);
soLabel.setEnabled(false);
c.add(outputArea);
outputArea.setEditable(false);
c.add(name);
setSize(300, 360);
setLocation(350,100);
//把人添加进去
addBt.addActionListener(new ActionListener() ...{
public void actionPerformed(ActionEvent e) ...{
String addName = inputFd.getText();
if (!addName.equals("")) ...{
if (list.contains(addName)) ...{
JOptionPane.showMessageDialog(null, "此人已存在!");
return;
} else
list.add(addName);
}
if (addName.equals("")) ...{
JOptionPane.showMessageDialog(null, "Sorry,您输入为空!");
return;
}
outputArea.append(addName + " ");
}
});
//搜索姓名
soBt.addActionListener(new ActionListener() ...{
public void actionPerformed(ActionEvent e) ...{
String so = soFd.getText();
if (list.contains(so))
result.setText("恭喜,已经找到!");
else
result.setText("Sorry,查无此人!");
if (so.equals(""))
result.setText("哦喔~,您输入为空!");
}
});
}
public static void main(String[] args) ...{
Exec22_09 fegor = new Exec22_09();
fegor.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
fegor.setVisible(true);
}
}