NullPointerException

Hi,

can you help me with following error.

After selecting 3 Display data, i have error NullPointerException

--

publicclass Person

{

private String name;

public Person()

{

name ="";

}

publicvoid setName(String newName)

{

name = newName;

}

public String getName()

{

return name;

}

}

-

publicclass PersonData

{

finalprivateint MAX = 10;

private Person[] firstName,lastName;

privateint total;

public PersonData()

{

firstName =new Person[MAX];

lastName =new Person[MAX];

total = 0;

}

publicvoid addData(String name1, String name2)

{

firstName[total] =new Person();

lastName[total] =new Person();

setData1(firstName[total],name1);

setData1(lastName[total],name2);

total++;

}

privatevoid setData1(Person p, String name)

{

p.setName(name);

}

public String display(int current)

{

return("First Name: "+firstName[current].getName()+","+"\nLast Name:"+lastName[current].getName());

}

}

--

import java.util.*;

publicclass PhoneBook

{

static Scanner console =new Scanner(System.in);

static PersonData c =new PersonData();

publicstaticvoid main (String[] args)

{

int choice,position;

showSelection();

choice = console.nextInt();

while(choice != 9)

{

switch(choice)

{

case 1: addPersonData();

break;

case 3: position = console.nextInt();

displayPersonData(position);

case 9:break;

default: System.out.println("Invalid Selection");

}

showSelection();

choice = console.nextInt();

}

}

publicstaticvoid showSelection()

{

System.out.println("Select and enter");

System.out.println("1 - Enter your first name ");

System.out.println("3 - Display data");

System.out.println("9 - exit");

}

publicstaticvoid addPersonData()

{

StringnameOne,nameTwo;

System.out.print("First Name: "); nameOne = console.next();

System.out.print("Last Name: "); nameTwo = console.next();

}

publicstaticvoid displayPersonData(int position)

{

System.out.println(c.display(position));

}

}

Thx

AYMF

[5449 byte] By [AsYourMindFliesa] at [2007-11-27 5:33:26]
# 1

Do you know about arraylist?

/**

* @(#)Person.java

*

*

* @author

* @version 1.00 2007/5/25

*/

public class Person {

private String firstName;

private String lastName;

public Person(String firstName, String lastName) {

this.firstName = firstName;

this.lastName = lastName;

}

public void setFirstName(String first) {

firstName = first;

}

public void setLastName(String last) {

lastName = last;

}

public String getFirstName() {

return firstName;

}

public String getLastName() {

return lastName;

}

}

PersonList

/**

* @(#)PersonList.java

*

*

* @author

* @version 1.00 2007/5/25

*/

import java.util.ArrayList;

public class PersonList {

private ArrayList<Person>list;

public PersonList() {

list = new ArrayList<Person>();

}

public void add(Person p) {

list.add(p);

}

public void delete(Person p) {

list.remove(p);

}

public Person search(String firstname) {

for(Person p : list) {

if(p.getFirstName().equals(firstname))

return p;

}

return null;

}

}

see how easy?

Message was edited by:

lrngjava

lrngjavaa at 2007-7-12 15:00:33 > top of Java-index,Java Essentials,New To Java...
# 2
Thx it works now.AYMF
AsYourMindFliesa at 2007-7-12 15:00:33 > top of Java-index,Java Essentials,New To Java...
# 3

AsYourMindFlies, you never actually put the data in the array.

Change

public static void addPersonData()

{

String nameOne, nameTwo;

System.out.print("First Name: "); nameOne = console.next();

System.out.print("Last Name: "); nameTwo = console.next();

}

to

public static void addPersonData()

{

String nameOne, nameTwo;

System.out.print("First Name: "); nameOne = console.next();

System.out.print("Last Name: "); nameTwo = console.next();

c.addData ( nameOne, nameTwo );

}

and it's solved.

Message was edited by:

Pommac

Pommaca at 2007-7-12 15:00:33 > top of Java-index,Java Essentials,New To Java...
# 4
Hi Pommac,Problem is in displaying the data (selection 1). When I select 3 to display added names. I have nullpointerexc. error.Thx AYMF
AsYourMindFliesa at 2007-7-12 15:00:33 > top of Java-index,Java Essentials,New To Java...