Avatar billede dk_zerocool Nybegynder
26. februar 2003 - 14:29 Der er 10 kommentarer og
1 løsning

Nullpointer exception til 100 point ??

Kan nogen gennemskue hvorfor jeg får en null-pointer exeption i dette java-kode, jeg har prøvet en masse uden held...nullpointerenexecpionen bliver smidt her:

public Object getValueAt(int row, int col) {
    if ( col == 0 ){
->      return new String(filnavn[row]);

-----hele koden------

package Model;

import javax.swing.*;
import javax.swing.table.*;
import java.io.*;

public class TabelModel extends AbstractTableModel {
 
  private String navne[] = { "Name" , "Ext" ,"Size" };

  File dir = new File("c:/");
  File[] filer = dir.listFiles();
  File[] fileListe;
  String filnavn[] = new String[filer.length];
 
  public void start(){
  int i= 0;
  int j= 0;
  int l= 0;
 
  while ( i < filer.length ) {
    System.out.println( "" + filer[i].getName() );
    i++;
    if ( filer[i-1].isDirectory() ){
      filnavn[j] = filer[i-1].getName();
      j++; 
    }
  }
 
  System.out.println( "" );
  while ( l < filer.length ) {
    l++;
    if ( filer[l-1].isFile() ) {
      filnavn[j] = filer[l-1].getName();
      j++;
    }
  }
  }
 
  public String getColumnName(int col) {
    return navne[col];
  }

  public int getColumnCount() {
    return 3;
  }
 
  public int getRowCount() {
    return filer.length + 1;
  }
 
  public Object getValueAt(int row, int col) {

    if ( col == 0 ){
      return new String(filnavn[row]);
    }           
    else if ( col == 1 )   
      return new String(filnavn[row]);
     
    else if ( col == 2 )
      return new String(filnavn[row]);
   
    else
      return null;
   
    }
}
Avatar billede dk_zerocool Nybegynder
26. februar 2003 - 14:31 #1
Koden skal bruges i en sammenhæng til at vise et biblioteks indhold med filer i et JTable
Avatar billede riversen Nybegynder
26. februar 2003 - 14:32 #2
hmmm...datamatikerstuderende i ikast? 2. sem?
Avatar billede erikjacobsen Ekspert
26. februar 2003 - 14:34 #3
Du glemmer at kalde start() ?
Avatar billede dk_zerocool Nybegynder
26. februar 2003 - 14:37 #4
Det var jo lige det som manglede....tak for hjælpen...smider du ikke lige et svar, så du kan få lidt point
Avatar billede erikjacobsen Ekspert
26. februar 2003 - 14:40 #5
Tak, ingen point til mig.
Avatar billede disky Nybegynder
26. februar 2003 - 15:53 #6
Erik jeg troede du var gået, jævnfør:
Livet er for kort til ASP

Nu kan man ikke slippe for et PRO-abonnement
længere, hvis man er lidt aktiv:


http://www.eksperten.dk/enyt.phtml?id=114


og det gider jeg ikke have, så nu er det så
(igen) farvel og tak fra mig.
Avatar billede solom Nybegynder
01. marts 2003 - 02:22 #7
det ville nok ikke skade at undersøge for null værdier inden der kigges på de forventede værdier
Avatar billede solom Nybegynder
01. marts 2003 - 02:26 #8
udtrykt i eksempel:

public Object getValueAt(int row, int col) {
  if ( col == null || row == null)
    return null;
  else if ( col == 0 )
    .....
  }
Avatar billede eydun Nybegynder
08. marts 2004 - 17:29 #9
>udtrykt i eksempel:
>
>public Object getValueAt(int row, int col) {
>  if ( col == null || row == null)
>    return null;
>  else if ( col == 0 )
>    .....
>  }

Ja, right?!? argumenterne er int's ! ;-)
Avatar billede eydun Nybegynder
08. marts 2004 - 18:03 #10
Og hvad er det der med new String(<et-eller-anden-string>) ?!?!? Returner dog den String som du har i arrayet!
Avatar billede dk_zerocool Nybegynder
01. januar 2006 - 21:49 #11
Lukker spørgsmålet
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester