Здравствуйте!
Написал программку для ввода данных людей с консоли.
Код | /* * To change this template, choose Tools | Templates * and open the template in the editor. */
import java.util.ArrayList; import java.util.Collection; import java.util.Scanner;
/** * * @author Simplevolk */ public class lab {
/** * @param args the command line arguments */ private static ArrayList<People> peoples; // Для шаблона Singletone статическая переменная private static lab instance;
// метод getInstance - проверяtт, инициализирована ли статическая // переменная (в случае надобности делает это) и возвращает ее public static synchronized lab getInstance() { if (instance == null) { instance = new lab(); } return instance; }
public ArrayList<People> getPeoples() { return peoples; } public void insertPeople(People people) { peoples.add(people); } public void deletePeople(People people)
{ peoples.remove(people); } public static void main(String[] args) { // TODO code application logic here int flag=0; lab ms=lab.getInstance(); People p=null; Scanner input= new Scanner(System.in); String str; while(flag==0) { p=new People();
// System.out.println("Vvedite ID: "); // str=input.next(); // p.setPeopleId(Integer.parseInt(str));
System.out.println("Vvedite Familiy:"); str=input.next(); p.setSurName(str); System.out.println("Vvedite Imia: "); str=input.next(); p.setFirstName(str);
System.out.println("Vvedite Otchestvo: "); str=input.next(); p.setPatronymic(str); System.out.println("Vvedite pol: "); str=input.next(); p.setSex(str);
System.out.println("Vvedite Daty:"); str=input.next(); p.setDateOfBirth(str);
System.out.println("Vvedite telefon: "); str=input.next(); p.setTelefone(str);
System.out.println("Vvedite Mesto: "); str=input.next(); p.setPlace(str);
peoples.add(p);
System.out.println("Zakonchit vvod? Yes=1;No=0"); str=input.next(); flag=Integer.parseInt(str);
} System.out.println("Vyvod dannyx: "); System.out.println(ms.getPeoples()); }
}
|
Код |
import java.text.DateFormat; import java.util.ArrayList; import java.util.Date;
/** * * @author Simplevolk */ public class People implements Comparable {
// private int peopleId;
// поле ИМЯ private String firstName; // поле ФАМИЛИЯ private String surName;
// поле ОТЧЕСТВО private String patronymic; // поле ДАТА РОЖДЕНИЯ private String dateOfBirth; // поле ПОЛ private String sex; // телефон private String telefone; // место встречи private String place;
public String getTelefone() { return telefone; } public void setTelefone(String telefon) {
this.telefone=telefon; } public String getPlace() { return place;
} public void setPlace(String myplace) { this.place=myplace; } public String getDateOfBirth() { return dateOfBirth; }
public void setDateOfBirth(String dateOfBirth) { this.dateOfBirth = dateOfBirth; }
public void setFirstName(String firstName) { this.firstName = firstName; } public String getFirstName() { return firstName; } // get/set для ОТЧЕСТВО public String getPatronymic() { return patronymic; }
public void setPatronymic(String patronymic) { this.patronymic = patronymic; }
// get/set для ФАМИЛИЯ public String getSurName() { return surName; }
public void setSurName(String surName) { this.surName = surName; }
// get/set для ПОЛ public String getSex() { return sex; }
public void setSex(String sex) { this.sex = sex; }
public int compareTo(Object o) { throw new UnsupportedOperationException("Not supported yet."); }
}
|
Но после ввода всех данных вылетает исключение
Код | Exception in thread "main" java.lang.NullPointerException at laba5.lab.main(lab.java:97)
|
Ошибку в коде я выделил жирным шрифтом.
Подскажите в чем дело?
|