繁体   English   中英

如何在Java中增加字符串的字符类型?

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM