Array de Strings

Java

09/04/2009

[color=blue] Ola a todos estou tendo problemas nesse metodo, alguem pode me dar uma luz Utilizando NetBeans 5.5.1, _______________________________________________________________ public int novo(String cidade,String estado) { String campos[] = null; String dados[] = null; campos[1] = "cidade"; // o problema se encontra nessas linhas campos[2] = cidade; // quando chamo esse metodo eh gerado uma exception dados[1] = "estado"; // incicada abaixo dados[2] = estado; return banco.adiciona("Cidade",campos,dados); } ________________________________________________________________ Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException at classes_ascesso.Cidade.novo(Cidade.java:16) at formularios.frm_addCidade.jButton2ActionPerformed(frm_addCidade.java:132) at formularios.frm_addCidade.access$000(frm_addCidade.java:15) at formularios.frm_addCidade$1.actionPerformed(frm_addCidade.java:45) at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1849) at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2169) at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420) at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258) at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236) at java.awt.Component.processMouseEvent(Component.java:5517) at javax.swing.JComponent.processMouseEvent(JComponent.java:3135) at java.awt.Component.processEvent(Component.java:5282) at java.awt.Container.processEvent(Container.java:1966) at java.awt.Component.dispatchEventImpl(Component.java:3984) at java.awt.Container.dispatchEventImpl(Container.java:2024) at java.awt.Component.dispatchEvent(Component.java:3819) at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212) at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3892) at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822) at java.awt.Container.dispatchEventImpl(Container.java:2010) at java.awt.Window.dispatchEventImpl(Window.java:1791) at java.awt.Component.dispatchEvent(Component.java:3819) at java.awt.EventQueue.dispatchEvent(EventQueue.java:463) at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149) at java.awt.EventDispatchThread.run(EventDispatchThread.java:110) [/color]
Vinicius Miguel

Vinicius Miguel

Curtidas 0

Respostas

Marcos

Marcos

09/04/2009

[quote="vmiguel"] public int novo(String cidade,String estado) { String campos[] = null; String dados[] = null; campos[1] = "cidade"; // o problema se encontra nessas linhas campos[2] = cidade; // quando chamo esse metodo eh gerado uma exception dados[1] = "estado"; // incicada abaixo dados[2] = estado; return banco.adiciona("Cidade",campos,dados); }
vc está declarando os arrays campos[] e dados[] sem passar uma quantidade de valores que elas irão ter.. instancie elas passando uma quantidade assim..
String campos[] = new String[100];
campos[0] = "cidade";
lembrando que a primeira posição no array eh a posição 0; :!:
GOSTEI 0
Paulo Pires

Paulo Pires

09/04/2009

public int novo(String cidade,String estado) {

String campos[] = null;
String dados[] = null;
campos[1] = "cidade"; // o problema se encontra nessas linhas
campos[2] = cidade; // quando chamo esse metodo eh gerado uma exception
dados[1] = "estado"; // incicada abaixo
dados[2] = estado;
return banco.adiciona("Cidade",campos,dados);
}
O erro de de NullPointerException acontece pq vc tenta inserir um valor em um objeto que não existe. Você não instanciou um objeto, você simplesmente declarou uma referência para um tipo String[], ao contrário dos tipos primitivos, que possuem valores padrão, os objetos devem ser instanciados antes de serem utilizados(da maneira que o colega citou acima.) Abraço
GOSTEI 0
POSTAR