package org.pacote; import java.awt.BorderLayout; import java.awt.Dimension; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.util.ArrayList; import java.util.Arrays; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JList; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.JTextField; import javax.swing.SwingUtilities; @SuppressWarnings("serial") public class ArrayListDemo extends JFrame { private String[] nomes = { "José", "Maria", "João", "Madalena", "Antônio" }; private ArrayList al = new ArrayList(Arrays.asList(nomes)); private JTextField nome; private JButton excluir; private JList lista; public ArrayListDemo() { super("ArrayListDemo"); initComponents(); } private void initComponents() { setDefaultCloseOperation(EXIT_ON_CLOSE); nome = new JTextField(); nome.setPreferredSize(new Dimension(200, 25)); excluir = new JButton("Excluir nome"); excluir.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { doExcluir(); } }); lista = new JList(al.toArray()); JScrollPane scroller = new JScrollPane(lista); JPanel southPanel = new JPanel(); southPanel.add(nome); southPanel.add(excluir); getContentPane().add(scroller); getContentPane().add(southPanel, BorderLayout.SOUTH); pack(); setLocationRelativeTo(null); setVisible(true); } private void doExcluir() { al.remove(nome.getText()); // Remove o primeiro elemento que combina lista.removeAll(); lista.setListData(al.toArray()); lista.repaint(); } /** * O método main é o ponto de entrada de um aplicativo Java. * * @param args os argumentos da linha de comando. */ public static void main(String[] args) { SwingUtilities.invokeLater(new Runnable() { @Override public void run() { new ArrayListDemo(); } }); } }