数组赋值问题,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);
                                        }
                                    }

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

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

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

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