Can anyone tell me why the array petArray is null when I try to print it to the console?
This is the file it is reading from:
112|C|Fluffy|4/1/2011|Tabby|Gray|M|Y|N|N
332|D|Phydeaux|6/3/2009|Collie|White/Tan|M|N|N|N
237|C|Snagglepuss|5/13/2010|Siamese|Sable|M|Y|Y|N
165|C|Sylvester|1/12/2008|Tuxedo|Black/White|F|N|N|N
113|C|Fluffy|499/1/2011|Tabby|Gray|M|Y|N|N
333|X|Phydeaux|6/3/2009|Collie|White/Tan|M|N|N|N
238|C|Snagglepuss|5/13/2010|Siamese|Sable|M|Y|Y|N
166|C|Sylvester|1/12/2008|Tuxedo|Black/White|F|N|G|N
114|C|Fluffy|4/1/2011|Tabby|Gray|M|Y|N|N
334|D|12/4/2005|Phydeaux|Collie|White/Tan|M|N|N|N
239|C|Snagglepuss|5/13/2010|Siamese|Sable|M|Y|Y|N
167|P|Sylvester|1/12/2008|Tuxedo|Black/White|F|N|E|N
115|C|Fluffy|4/1/2011|Tabby|Gray|M|Y|
335|D|Phydeaux|6/3/2009|Collie|White/Tan|M|N|N|N
240|C|Snagglepuss|5/13/2010|Siamese|Sable|M|Y|Y|N
168|C|Sylvester|1/12/20085|Tuxedo|Black/White|F|N|N|N
import java.awt.BorderLayout; import java.awt.Component; import java.util.*; import java.awt.TextArea; import java.util.LinkedList; import javax.swing.*; import javax.swing.JFrame; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; /* * Makes a new JFrame thats makes two textareas, fills in the textareas * from the array and linkedlist. */ public class PetGUI extends JFrame{ static int number; static String[] animalArray; static TextArea north; static TextArea south; public PetGUI(TextFileInput tfi){ int lines = 0; TextFileInput tfil = new TextFileInput("project4.txt"); String rlines = tfil.readLine(); while(rlines != null){ lines++; rlines = tfil.readLine(); } tfil.close(); String [] myArray = new String[100]; number = lines; animalArray = myArray; this.setSize(400,400); this.setLocation(200, 200); this.setTitle("Adoptable Pets"); createFileMenu(); createEditMenu(); TextArea north = new TextArea(9,20); TextArea south = new TextArea(9,20); this.getContentPane().add(north,BorderLayout.NORTH); this.getContentPane().add(south,BorderLayout.SOUTH); north.setEditable(false); south.setEditable(false); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setVisible(true); Cat c; Dogs d; AdoptablePet [] petArray = new AdoptablePet[lines]; for(int i = 0; i < lines; i++){ myArray[i] = tfi.readLine();; } tfi.close(); for(int i = 0; i < lines; i++){ if(myArray[i].charAt(4) == 'C'){ String[] r = myArray[i].split("\\|"); if(r.length != 9){ try{ throw new IllegalPetInput("Not the right length of input"); } catch(IllegalPetInput a){ } } else try{ c = new Cat(Integer.parseInt(r[0]),r[1],r[2],r[3],r[4],r[5],r[6],r[7],r[8],Boolean.parseBoolean(r[9])); petArray[i] = c; } catch(AdoptablePetException a){ System.out.println("Wrong information for the cat."); } } if(myArray[i].charAt(4) == 'D'){ String[] r = myArray[i].split("\\|"); if(r.length != 9){ try{ throw new IllegalPetInput("Not the right length of input"); } catch(IllegalPetInput a){ } } else try{ d = new Dogs(Integer.parseInt(r[0]),r[1],r[2],r[3],r[4],r[5],r[6],r[7],r[8],Boolean.parseBoolean(r[9])); petArray[i] = d; } catch(AdoptablePetException a){ System.out.println("Wrong information for the cat."); } } } LinkedList l = new LinkedList(); for(int i = 0; i < lines; i++) System.out.println(myArray[i]); System.out.println(); for(int i = 0; i < lines; i++) System.out.println(petArray[i]); //Appends the north side of the texarea with all of the lines for(int i = 0; i < l.size(); i++) north.append((String) l.get(i)); }
This is the file it is reading from:
112|C|Fluffy|4/1/2011|Tabby|Gray|M|Y|N|N
332|D|Phydeaux|6/3/2009|Collie|White/Tan|M|N|N|N
237|C|Snagglepuss|5/13/2010|Siamese|Sable|M|Y|Y|N
165|C|Sylvester|1/12/2008|Tuxedo|Black/White|F|N|N|N
113|C|Fluffy|499/1/2011|Tabby|Gray|M|Y|N|N
333|X|Phydeaux|6/3/2009|Collie|White/Tan|M|N|N|N
238|C|Snagglepuss|5/13/2010|Siamese|Sable|M|Y|Y|N
166|C|Sylvester|1/12/2008|Tuxedo|Black/White|F|N|G|N
114|C|Fluffy|4/1/2011|Tabby|Gray|M|Y|N|N
334|D|12/4/2005|Phydeaux|Collie|White/Tan|M|N|N|N
239|C|Snagglepuss|5/13/2010|Siamese|Sable|M|Y|Y|N
167|P|Sylvester|1/12/2008|Tuxedo|Black/White|F|N|E|N
115|C|Fluffy|4/1/2011|Tabby|Gray|M|Y|
335|D|Phydeaux|6/3/2009|Collie|White/Tan|M|N|N|N
240|C|Snagglepuss|5/13/2010|Siamese|Sable|M|Y|Y|N
168|C|Sylvester|1/12/20085|Tuxedo|Black/White|F|N|N|N