字符串中的Java null char

时间:2011-09-29 04:30:53

标签: java string null char

我正在尝试在Java中构建一个字符串,该字符串最长为3,最长为1。

我正在构建字符串,具体取决于整数数组的内容,如果数组的内容为-1,则希望在字符串中输出空字符。否则,该字符串将包含整数的字符版本。

    for (int i=0; i < mTypeSelection.length; i++){
        mMenuName[i] = (mTypeSelection[i] > -1 ? Character.forDigit(mTypeSelection[i], 10)  : '\u0000');

    }

这是我到目前为止,但是当我输出数组{0,-1,-1}的字符串而不是只是获取字符串“0”时,我得到字符串“0 ”。

有谁知道我怎么能得到我想要的结果。

谢谢,m

1 个答案:

答案 0 :(得分:6)

我将假设您要在第一个空字符处终止字符串,就像在C中发生的那样。但是,您可以在Java中的字符串中包含空字符,因此它们不会终止字符串。我认为以下代码将产生您所追求的行为:

StringBuilder sb = new StringBuilder();
for (int i=0; i < mTypeSelection.length; i++){
    if(mTypeSelection[i] > -1) {
        sb.append(Character.forDigit(mTypeSelection[i], 10));
    } else {
        break;
    }
}
String result = sb.toString();