Java如何实现:在文本框输入一个数据,就把数据存入到集合中去?
List<Integer>list=NewArrayList<Integer>();比如先输入12,就list.add(12),文本框再append(24),再list....
List<Integer> list=New ArrayList<Integer>();
比如先输入12,就list.add(12),文本框再append(24),再list.add(24),以此下去。 展开
比如先输入12,就list.add(12),文本框再append(24),再list.add(24),以此下去。 展开
2个回答
推荐于2017-09-26
展开全部
public class PrintStr {
public static void main(String[] args) {
new PrintStr().new MyFrame();
}
class MyFrame extends JFrame{
private JTextArea jta = new JTextArea();
private JTextField jtf = new JTextField();
private List<Integer> list = new ArrayList<Integer>();
public MyFrame(){
setBounds(400, 300, 300, 200);
setLayout(new BorderLayout());
add(jta,BorderLayout.CENTER);
add(jtf,BorderLayout.SOUTH);
setVisible(true);
addActionListener();
}
private void addActionListener(){
/*文本框直接输入数字,监听键盘事件,当输入的有空格时,解析输入的文本*/
jta.addKeyListener(new KeyAdapter() {
public void keyPressed(KeyEvent e) {
String str = jta.getText();
if(32== e.getKeyCode()){//当在文本框里打了空格时才解析输入的是否位数字
String[] arr = str.split(" ");
for(String st:arr){
try{
if(!list.contains(Integer.parseInt(st)))
list.add(Integer.parseInt(st));
}catch(Exception e1){
System.out.println("输入的文本存在非数字");
}
}
System.out.println(list);
}
}
});
/*文本条输入类容时,以回车来确定是否录入数字,在文本框中显示出来*/
jtf.addKeyListener(new KeyAdapter() {
public void keyPressed(KeyEvent e) {
if(10 ==e.getKeyCode()){//按下回车键
jta.append(" " + jtf.getText());
try{
if(!"".equals(jtf.getText()))
list.add(Integer.parseInt(jtf.getText()));
}catch(Exception e1){
System.out.println("输入的非数字");
}
jtf.setText("");
}
System.out.println(list);
}
});
}
}
}
public static void main(String[] args) {
new PrintStr().new MyFrame();
}
class MyFrame extends JFrame{
private JTextArea jta = new JTextArea();
private JTextField jtf = new JTextField();
private List<Integer> list = new ArrayList<Integer>();
public MyFrame(){
setBounds(400, 300, 300, 200);
setLayout(new BorderLayout());
add(jta,BorderLayout.CENTER);
add(jtf,BorderLayout.SOUTH);
setVisible(true);
addActionListener();
}
private void addActionListener(){
/*文本框直接输入数字,监听键盘事件,当输入的有空格时,解析输入的文本*/
jta.addKeyListener(new KeyAdapter() {
public void keyPressed(KeyEvent e) {
String str = jta.getText();
if(32== e.getKeyCode()){//当在文本框里打了空格时才解析输入的是否位数字
String[] arr = str.split(" ");
for(String st:arr){
try{
if(!list.contains(Integer.parseInt(st)))
list.add(Integer.parseInt(st));
}catch(Exception e1){
System.out.println("输入的文本存在非数字");
}
}
System.out.println(list);
}
}
});
/*文本条输入类容时,以回车来确定是否录入数字,在文本框中显示出来*/
jtf.addKeyListener(new KeyAdapter() {
public void keyPressed(KeyEvent e) {
if(10 ==e.getKeyCode()){//按下回车键
jta.append(" " + jtf.getText());
try{
if(!"".equals(jtf.getText()))
list.add(Integer.parseInt(jtf.getText()));
}catch(Exception e1){
System.out.println("输入的非数字");
}
jtf.setText("");
}
System.out.println(list);
}
});
}
}
}
本回答被提问者采纳
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询