import java.util.*;
class ManOne{
Scanner scanner=new Scanner(System.in);
String name;
boolean sex;
long num;
ManOne ob[]=new ManOne[2];
String informationgroup[]=new String[2];
void getin(){
for(int i=0;i<ob.length;i++){
System.out.println("Input the man's name");
ob[i].name=scanner.nextLine();
System.out.println("Input the man's sex");
ob[i].sex=scanner.nextBoolean();
scanner.nextLine();
System.out.println("Input the man's num");
ob[i].num=scanner.nextLong();
scanner.nextLine();
}
}
public String toString(int i){
return "the name is"+ ob[i].name+"the sex is "+ob[i].sex+"the num is"+num;
}
void savetheinformation(){
for(int i=0;i<informationgroup.length;i++){
informationgroup[i]=ob[i].toString(i);
}
}
void shower(){
for(int i=0;i<informationgroup.length;i++){
System.out.println(informationgroup[i]);
}
}
void settheinformation(){
System.out.println("Input the man's name");
name=scanner.nextLine();
System.out.println("Input the man's sex");
sex=scanner.nextBoolean();
scanner.nextLine();
System.out.println("Input the man's num");
num=scanner.nextLong();
scanner.nextLine();
}
String getMenber(String name){
if(this.name.endsWith(name)){
return name;
}
else{
return null;
}
}

}
public class TestForManone {
public static void main(String args[]){
ManOne A=new ManOne();
A.getin();
A.savetheinformation();
A.shower();
}}

解决方案 »

  1.   

    ManOne ob[]=new ManOne[2];
    String informationgroup[]=new String[2];有这么写程序呢么????括号呢??? 
      

  2.   

    简单的就是说 你的数组只声明了 但是没有初始化~~~懂么?我说的括号的意思就是。。你需要初始化假如你声明了一个数组
    for(int i = 0; i < ob.length;i++)
    {
    ob[i] = new ManOne();
    }
    你需要如上初始化
      

  3.   

    ManOne ob[] = new ManOne[2];
    这个需要初始化里面的对象啊兄弟,你只是创建了一个数组,但是数据里面没有初始化,所以[null,null]然后你用null来获取name属性,肯定就会空指针了。帮你改了一下class ManOne {
    Scanner scanner = new Scanner(System.in);
    String name;
    boolean sex;
    long num;
    ManOne ob[] = new ManOne[2];
    String informationgroup[] = new String[2];
    void getin() {
    for (int i = 0; i < ob.length; i++) {
    System.out.println("Input the man's name");
    ob[i].name = scanner.nextLine();
    System.out.println("Input the man's sex");
    ob[i].sex = scanner.nextBoolean();
    scanner.nextLine();
    System.out.println("Input the man's num");
    ob[i].num = scanner.nextLong();
    scanner.nextLine();
    }
    } public String toString(ManOne[] ob,int i) {
    return "the name is " + ob[i].name + " the sex is " + ob[i].sex
    + " the num is" + num;
    } void savetheinformation(ManOne[] ob) {
    for (int i = 0; i < informationgroup.length; i++) {
    informationgroup[i] = ob[i].toString(ob,i);
    }
    } void shower() {
    for (int i = 0; i < informationgroup.length; i++) {
    System.out.println(informationgroup[i]);
    }
    } void settheinformation() {
    System.out.println("Input the man's name");
    name = scanner.nextLine();
    System.out.println("Input the man's sex");
    sex = scanner.nextBoolean();
    scanner.nextLine();
    System.out.println("Input the man's num");
    num = scanner.nextLong();
    scanner.nextLine();
    } String getMenber(String name) {
    if (this.name.endsWith(name)) {
    return name;
    } else {
    return null;
    }
    }}public class TestForManone {
    public static void main(String args[]) {
    ManOne A = new ManOne();
    for(int i = 0; i < A.ob.length; i++){
    A.ob[i] = new ManOne();
    }
    A.getin();
    A.savetheinformation(A.ob);
    A.shower();
    }
    }
      

  4.   

    不要忘了初始化!我运行了,主要是没初始化导致的java.lang.NullPointerException(空指针)错误