首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >将字符串中的字母提升为java中的下一个字母

将字符串中的字母提升为java中的下一个字母
EN

Stack Overflow用户
提问于 2011-01-15 14:13:51
回答 7查看 40.5K关注 0票数 6

我在弄清楚如何让我的代码递增用户输入的字符串时遇到了问题,这样当用户选择替换像z这样的字母时,它将转到a,b到c等等。问题是我必须在不使用布尔值的情况下这样做。我应该通过使用算术从用户输入中获得从z到a的提升来获得此结果。加号只能是a-z的小写字母。任何帮助都将不胜感激。

EN

回答 7

Stack Overflow用户

发布于 2011-01-15 14:20:22

代码语言:javascript
复制
String s = "q";
char c = s.charAt(0);
c++;
//here you can handle cases like z->a
if (c=='z') c = 'a';

char[] chars = new char[1];
chars[0] = c;
String s1 = new String(chars);
票数 2
EN

Stack Overflow用户

发布于 2011-01-15 14:54:34

还有另一种选择,将==测试隐藏在开关中:

代码语言:javascript
复制
public static void main(String[] args)
{

    char[] chars = {'a','k','f','z'};
    for (char letter : chars) {
        char next = letter;
        switch (next) {
        case 122: // or 'z', either way
            next ='a';
            break;
        default:
            next += 1;
        }
        System.out.println(letter + " is followed by " + next + " ");
    }

}
票数 2
EN

Stack Overflow用户

发布于 2011-01-15 14:27:03

代码语言:javascript
复制
Map<Character, Character> s = new HashMap<Character, Character>();
s.put('a', 'b');
...
s.put('z', 'a');


String s = "q";
char c = s.charAt(0);

c = s.get(c);

char[] chars = new char[1];
chars[0] = c;
String s1 = new String(chars)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4698290

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档