Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/210.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java SpannableStringBuilder append()NullPointerException_Java_Android_Exception Handling_Spannablestringbuilder - Fatal编程技术网

Java SpannableStringBuilder append()NullPointerException

Java SpannableStringBuilder append()NullPointerException,java,android,exception-handling,spannablestringbuilder,Java,Android,Exception Handling,Spannablestringbuilder,SpannableStringBuilder源代码附加函数不能避免NullPointerException?? 若文本为null,则append函数肯定会抛出NullPointerException。 如果文本为空,则很容易忘记检查每种情况。例如,文本可能来自服务器。 有谁对SpannableStringBuilder append函数有更好的想法来避免npe吗?您可以将SpannableStringBuilder包装在自己的类中,并在那里进行空检查。我想说,这个类的创建者让调用方来确保将非空文

SpannableStringBuilder源代码附加函数不能避免NullPointerException?? 若文本为null,则append函数肯定会抛出NullPointerException。 如果文本为空,则很容易忘记检查每种情况。例如,文本可能来自服务器。
有谁对SpannableStringBuilder append函数有更好的想法来避免npe吗?

您可以将SpannableStringBuilder包装在自己的类中,并在那里进行空检查。

我想说,这个类的创建者让调用方来确保将非空文本传递给该方法。而且,我看不出这个决定有什么错。SpannableStringBuilderappendCharSequence文本不是最终文本-您可以在某些自定义类别中覆盖它。这取决于您是否要忘记它。或者只是扩展这个类,重写append,然后使用扩展的类。
// Documentation from interface
public SpannableStringBuilder append(CharSequence text) {
    int length = length();
    return replace(length, length, text, 0, text.length());
}