2015-10-21 52 views
-1

我正在爲以下代碼塊奇怪返回(套整數值):與char值使用的添加劑操作者產生不同的結果

public String doubleChar(String str) { 
String answer = ""; 
for (int i = 0; i < str.length(); i++) { 
answer = answer + (str.charAt(i) + str.charAt(i)); 
} 
return answer; 
} 

對着正確的輸出值(字符串的重複字符),當我刪除封閉在循環的第一個語句行str.chatAt方法調用的括號:

answer = answer + str.charAt(i) + str.charAt(i); 

任何幫助表示讚賞,不能在網上追查。

感謝

+0

多:http://stackoverflow.com/questions/8688668/in-java-is-the-result-of -the-addition-of-two-chars-an-int-or-a-char –

回答

0

在Java char是整型。看起來你想要String級聯(即String加法)。你可以使用

public String doubleChar(String str) { 
    String answer = ""; 
    for (int i = 0; i < str.length(); i++) { 
     answer = answer + String.valueOf(str.charAt(i)) 
       + String.valueOf(str.charAt(i)); 
    } 
    return answer; 
} 

或(我偏好)一StringBuilder

public String doubleChar(String str) { 
    StringBuilder sb = new StringBuilder(); 
    for (char ch : str.toCharArray()) { 
     sb.append(ch).append(ch); 
    } 
    return sb.toString(); 
} 
+0

非常感謝 - 非常感謝你 – TheEssentialMix

相關問題