2011-09-29 58 views
5

我想在Java中创建一个字符串,这个字符串最多只能有3个长度并且至少有1个字符。在字符串中的Java null char字符串

我建立的字符串取决于整数数组的内容,并希望在字符串中输出空字符(如果数组的内容为-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”。

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

感谢,男

+0

你能提供完整的代码吗?你如何印出结果? – srikanta

+1

听起来像你说你想要的行为是发生了什么 - 最后字符串中的位置2和位置3中的空字符结束。空字符不会终止Java中的字符串。你是否想要在数组的第一个-1处截断字符串? –

回答

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(); 
+0

非常感谢。 – mAndroid

+0

不客气:) –