【发布时间】:2024-01-14 12:56:01
【问题描述】:
我创建了这段代码,它查看字符串标记并对其进行格式化,以便每个字符都移动一个。字符全部小写,从a到z。
如果我的输入是
abcz
输出为
bcda
现在我将所有字母添加到数组列表中,代码确定每个字符的索引并向其添加一个。如果找到 z,它会打印 a,这样 arraylist 的索引就不会超出范围。
List<String> letters = new ArrayList<String>();
String alp = "abcdefghijklmnopqrstuvwxyz";
for (int i = 0; i<26; i++)
{
letters.add(Character.toString(alp.charAt(i)));
}
String token = sc.next();
for (int i = 0; i<token.length(); i++)
{
if (letters.get(letters.indexOf(Character.toString(token.charAt(i)))).equals("z"))
{
System.out.print("a");
}
else
{
System.out.print(letters.get(letters.indexOf(Character.toString(token.charAt(i)))+1));
}
}
【问题讨论】:
-
那么你的问题是什么?您在寻找什么样的改进:更少的代码、更好的性能、更好的编码风格?您在实施过程中遇到任何问题吗?上下文是什么,你需要这个函数做什么?