对象数组导致NullPointerException Java
我不知道为什么,但这行代码给出了一个对象数组导致NullPointerException Java,java,nullpointerexception,Java,Nullpointerexception,我不知道为什么,但这行代码给出了一个NullPointerException。我搜索了创建用户obj的数组。同样,在Java中,我没有发现任何问题 private State[] states; . . . private void initializeStates( ) { states = new State[ stateNames.length ]; // Throws NullPointerException for( i
NullPointerException
。我搜索了创建用户obj的数组。同样,在Java中,我没有发现任何问题
private State[] states;
.
.
.
private void initializeStates( )
{
states = new State[ stateNames.length ]; // Throws NullPointerException
for( int i = 0; i < stateNames.length; i++ )
{
states[i] = new State();
states[i].setName( stateNames[i] );
states[i].setColor( stateColors.getColor() );
}
} // End of initializeStates()
如果此行引发异常:
states = new State[ stateNames.length ]; // Throws NullPointerException
。。。然后问题是stateNames
是null
。您的代码没有达到其他代码的水平
您还没有显示声明或初始化stateNames
的位置,但这是您接下来应该查看的位置
另一方面,这:
stateName = new String();
。。。无缘无故地效率低下。只需使用空字符串文字:
stateName = "";
(或者更好,将适当的初始值作为构造函数参数。)如果此行引发异常:
states = new State[ stateNames.length ]; // Throws NullPointerException
。。。然后问题是stateNames
是null
。您的代码没有达到其他代码的水平
您还没有显示声明或初始化stateNames
的位置,但这是您接下来应该查看的位置
另一方面,这:
stateName = new String();
。。。无缘无故地效率低下。只需使用空字符串文字:
stateName = "";
(或者更好,将适当的初始值作为构造函数参数。)您可以发布stacktrace并指向异常行吗?您可以发布stacktrace并指向异常行吗?