Pessoal, começei a estudar listas ligadas a uns tempos atrás e estou a tentar adicionar um valor na lista so que ele me retorna um erro de excepção, eis o codigo:
No.java
public class No{
public int valor;
public No proximo;
}
Oplista.java
import javax.swing.*;
import javax.swing.text.*;
import java.awt.event.*;
import java.awt.*;
public class Oplista extends JFrame implements ActionListener
{
private JButton adicionar, excluir, visualizar, editar;
static No inicio = null;
static No fim;
//private JPanel botoes;
public Oplista()
{
super("::..Listas Ligadas..::");
formulario();
setVisible(true);
setSize(250,100);
setLocationRelativeTo(null);
setResizable(false);
//pack();
}
public void formulario()
{
setLayout(new GridLayout(2,2));
adicionar = new JButton("Adicionar");
excluir = new JButton("Excluir");
visualizar = new JButton("Visualizar");
editar = new JButton("Editar");
adicionar.addActionListener(this);
add(adicionar);
add(excluir);
add(visualizar);
add(editar);
getContentPane();
}
public void adiciona()
{
fim = inicio;
if(inicio==null)
//inicio = new No(); Reserva no espaço de memória caso inicio(Head) esteja vazio
fim = inicio;
if(inicio!=null)
{
inicio.valor=150;
inicio.proximo=null;
}
JOptionPane.showMessageDialog(null,inicio.valor);
//System.out.println(inicio.valor);
}
public void actionPerformed(ActionEvent event)
{
if(event.getSource()==adicionar)
{
adiciona();
}
}
public static void main(String args[])
{
new Oplista();
}
}