我只是想做一个简单的“电话簿”应用程序,但我做错了什么。但是idk是什么。我在做什么错了?
这是我的第一课,
import java.util.Scanner;
public class PhoneBookEntryDemo
{
public static void main(String[] args){
int k=0,contacts=0;
String position;
Scanner KB = new Scanner(System.in);
System.out.println("This is a automatic phonebook. the first of its kind.");
System.out.println("How many contacts do you want to enter today?");
contacts = KB.nextInt();
PhoneBookEntry[] Test = new PhoneBookEntry[contacts];
do{
switch (k) { //this is for formatting the out put
case 0: position="st";
break;
case 1: position="nd";
break;
case 2: position="rd";
break;
default: position="th";
break;
}
System.out.println("Please enter the name "+ (k+1)+position+" of the contact: ");
Test[k].getName(KB.next()); //sets the name of what ever the counter is @
System.out.println("Now enter the phone number: ");
Test[k].getPhoneNumber(KB.nextInt()); //sets the phone number at whatever the counter is @
k++;
}while(k<contacts);
}
}
这是我第二类,
public class PhoneBookEntry
{
String name;
int phoneNumber;
public PhoneBookEntry(String aName, int aPhoneNumber){
name = aName;
phoneNumber = aPhoneNumber;
}
public void getName(String setName){
name = setName;
}
public void getPhoneNumber(int setPhoneNumber){
phoneNumber = setPhoneNumber;
}
}
它符合,但它抛出一个运行时错误。
java.lang.NullPointerException at PhoneBookEntryDemo.main(PhoneBookEntryDemo.java:31)
我知道它我的方法调用,但我想不出什么我做错了,我尝试了几种不同的迭代,但仍然没有骰子。
哪条线是31号线? – 2012-04-19 04:23:27