ten*_*nik 0 java stringbuilder nullpointerexception
我正在使用类的append()方法遇到一个奇怪的问题StringBuilder; 这是方法:
public StringBuilder toStringBuilder(byte[] b)
{
StringBuilder s = new StringBuilder();
for (int i = 0; i < b.length; i++)
{
s.append(Integer.toString((b[i] & 0xff) + 0x100,16).substring(1));
}
System.out.println(s);
return s;
}
Run Code Online (Sandbox Code Playgroud)
它需要一个字节数组并将其转换为StringBuilder(同时执行其他操作).
一切似乎没问题,当我运行程序时它打印出正确的结果,但也显示了一个NullPointerException不让我继续使用该程序; 例外指向第四行
(for (int i = 0; i < b.length; i++))
Run Code Online (Sandbox Code Playgroud)
这是一个截图:

如果这行:
for (int i = 0; i < b.length; i++)
Run Code Online (Sandbox Code Playgroud)
抛出一个NPE,只有一个可能的解释. b是null.
您可以通过在for语句之前立即添加此语句来证明(或反驳)这一点.
System.out.println("b is " + b);
Run Code Online (Sandbox Code Playgroud)
一旦你确认,你需要逆向操作弄清楚为什么b是null在这一点上.根据您向我们展示的代码,我无法提供任何见解.