| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 723 人关注过本帖
标题:大神们,帮忙看一下为什么会有空指针报错..
只看楼主 加入收藏
mndl
Rank: 2
等 级:论坛游民
帖 子:14
专家分:15
注 册:2013-3-25
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:7 
大神们,帮忙看一下为什么会有空指针报错..
import java.util.*;

public class StudentEbo {
    Student[] arr=new Student[0];
    public static void main(String[] args){
        Scanner in=new Scanner(System.in);
        System.out.println("请输入学生人数:");
        StudentEbo.add(in.nextInt());
    }
    public static void add(int num){
        if(arr.length<num){
            Student[] tempArr=new Student[arr.length+1];
            Scanner in=new Scanner(System.in);
            Student st=new Student();
            System.out.println("请输入学生姓名:");
            st.setName(in.next());
            System.out.println("请输入学生年龄:");
            st.setAge(in.nextInt());
            st.setOn(arr.length+1);
            tempArr[arr.length]=st;
            arr=tempArr;
            printAll();
        }
    }
    public static void printAll(){
        System.out.println("\t编号\t姓名\t年龄\tjava\tC#\thtml\tsql\t总分\t平均分");
        for(int i=0;i<arr.length;i++){
            System.out.println("\t"+arr[i].getOn()+"\t"+arr[i].getName()+"\t"+arr[i].getAge()+"\t"+arr[i].getJava()+"\t"+arr[i].getC_shar()
                    +"\t"+arr[i].getHtml()+"\t"+arr[i].getSql()+"\t"+arr[i].getSum()+"\t"+arr[i].getAvg());
        }
    }
}
StudentEbo.rar (877 Bytes)
搜索更多相关主题的帖子: static void public import 
2013-05-04 20:33
Kingbox_tang
Rank: 7Rank: 7Rank: 7
来 自:天津师范大学
等 级:黑侠
威 望:3
帖 子:146
专家分:677
注 册:2012-11-27
收藏
得分:0 
你到是把整个程序的源代码发出来呀,这个怎么看?


旨在提高编程水平,学有所用,学有所成,学有所为。
2013-05-05 00:34
hhwz
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:87
帖 子:687
专家分:4502
注 册:2011-5-22
收藏
得分:0 
arr=tempArr;
这一句 你arr定义的长度是0没有重新初始化
arr始终是0当然是空指针
2013-05-05 00:42
mndl
Rank: 2
等 级:论坛游民
帖 子:14
专家分:15
注 册:2013-3-25
收藏
得分:0 
回复 3楼 hhwz
但是把tempArr的值赋给他了,该应会有tempArr的值才对啊..
2013-05-05 11:00
mndl
Rank: 2
等 级:论坛游民
帖 子:14
专家分:15
注 册:2013-3-25
收藏
得分:0 
回复 2楼 Kingbox_tang
这已经是一段完整的代码了..
2013-05-05 11:01
ren829
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:15
帖 子:255
专家分:1174
注 册:2006-3-11
收藏
得分:5 
回复 4楼 mndl
数组是不可以改变长度的,你不重新赋值,它一直是没数据的,没有分配地址空间,存不进去的。
2013-05-05 12:00
littleR
Rank: 2
等 级:论坛游民
威 望:1
帖 子:13
专家分:50
注 册:2013-5-6
收藏
得分:5 
没看到student这个类啊,另外arr没有定义

相信,一定可以
2013-05-06 17:02
littleR
Rank: 2
等 级:论坛游民
威 望:1
帖 子:13
专家分:50
注 册:2013-5-6
收藏
得分:10 
我也是没学多久,修改了你的代码
import java.util.*;

public class StudentEbo {
   
    public static void main(String[] args){
        Student[] arr=new Student[0];
        Scanner in=new Scanner(System.in);
        System.out.println("请输入学生人数:");
        int n =in.nextInt();
        StudentEbo.add(n,arr);
    }
    public static void add(int num,Student[]arr){
        if(arr.length<num){
            Student[] tempArr=new Student[arr.length+1];
            Scanner in=new Scanner(System.in);
            Student st=new Student();
            System.out.println("请输入学生姓名:");
            st.setName(in.next());
            System.out.println("请输入学生年龄:");
            st.setAge(in.nextInt());
            st.setId(arr.length+1);
            tempArr[arr.length]=st;
            arr=tempArr;
            printAll(arr);
        }
    }
    public static void printAll(Student[]arr){
        System.out.println("\t编号\t姓名\t年龄");
        for(int i=0;i<arr.length;i++){
            System.out.println("\t"+arr[i].getId()+"\t"+arr[i].getName()+"\t"+arr[i].getAge()+"\t");
        }
    }
}
class Student{
    private int id;
    private String name;
    private int age;
   

    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }
    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
}

相信,一定可以
2013-05-06 17:20
快速回复:大神们,帮忙看一下为什么会有空指针报错..
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.012934 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved