2 suwu150 suwu150 于 2016.05.11 13:19 提问

数组赋值问题,java语言?

帮我看看,我下面的语句有哪些错误??提示是空指针,点击错误显示在

temp[i][j]=str_p_char[k];这一行

                   str_p_char=str_p.toCharArray();  
                                    miyue_c=miyue.toCharArray();
                                    int len_strpchar=str_p_char.length;
                                    int len_miyue=miyue_c.length;
                                    char [][]temp = null;
                                    int k = 0;
                                    int len=(len_strpchar/len_miyue)+1;
                                    for(int i=0;i<len;i++)
                                    {
                                        for(int j=0;j<len_miyue;j++)
                                        {
                                                if(str_p_char[k]==':')
                                                {
                                                        ;
                                                }
                                                else
                                                {
                                                     temp[i][j]=str_p_char[k];
                                                }
                                                 k++;
                                                 System.out.println("K:"+k);
                                        }
                                    }

4个回答

shenshucong520
shenshucong520   2016.05.11 13:42
已采纳

char [][]temp = null;你都不new 就直接使用,能不是空指针吗

bdmh
bdmh   Ds   Rxr 2016.05.11 13:23

自己调试检查两个地方,第一temp[i][j]是否越界,第二 str_p_char[k] 是否存在

u013559751
u013559751   2016.05.11 13:57

楼上说的对啊,char [][]temp = null ,不能这样初始化数组啊

u012377333
u012377333   Rxr 2016.05.11 15:42

char [][]temp = null;
这只是声明了二维数组,并有分配存储空间的,在使用的时候需要 new 开辟存储空间来存储数据

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!