[英]How do i Increment Char Type for a String in Java?
這適用於單個字符,但我想使用字符串,但我不知道該怎么做。
class test
{
public static void main(String arg[])
{
char c = 'A';
c = c + 1;
System.out.println(c);
}
}
假設字符串是"Hello World"
因此+1增量將返回"Ifmmp xpsme"
您必須將String拆分為一個char數組,然后將1添加到每個char中:
public String sumToCharsAtString(String word) {
StringBuffer b = new StringBuffer();
char[] chars = word.toCharArray();
for (char c : chars) {
if(c != ' ')
c = (char) (c + 1);
b.append(c);
}
return b.toString();
}
您確實不需要使用StringBuffer ,但是為了節省內存 ,這是一個很好的做法。
聽起來好像只希望增加字母字符。 如果是這樣,這應該作為一般解決方案(假設使用非null的String):
public String incrementChars(String s) {
StringBuilder result = new StringBuilder(s.length());
for (char c : s.toCharArray()) {
if (Character.isAlphabetic(c)) {
result.append((char) (c + 1));
} else {
result.append(c);
}
}
return result.toString();
}
請注意,如果性能尤為重要,則最好使用避免toCharArray調用的舊式for循環。 但這不太重要。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.