用java编写随意输入一个字母显示其下一个字母例如输入a显示b输入A显示B

如题~请输入完成代码我验证通过再给分!闲人勿扰!!... 如题~
请输入完成代码
我验证通过再给分!
闲人勿扰!!
展开
 我来答
匿名用户
2013-08-21
展开全部
我刚写完,测试没问题,而且很健壮,以下是代码,Test类:

import java.util.Scanner;

public class Test {
public static boolean checkC(String s) {
if (s.length() != 1) {
return false;
}
char c = s.charAt(0);
if (c >= 'A' && c <= 'Z' || c >= 'a' && c <= 'z') {
return true;
} else {
return false;
}
}

public static char showNext(String s) {
char c = s.charAt(0);
return ++c;
}

public static void main(String[] args) {
Scanner s = new Scanner(System.in);
System.out.println("请输入一个字母或输入exit退出程序");
String str = s.nextLine();
while (str != null) {
if (str.equalsIgnoreCase("exit")) {
System.out.println("已退出!exit");
System.exit(-1);
}
if (!checkC(str)) {
System.out.println("输入内容不是字母,重新输入");
str = s.nextLine();
continue;
}
char c = showNext(str);
if (c == ('z' + 1) || c == ('Z' + 1)) {
System.out.println("输入的是 " + --c + " ,没有下一个了");
str = s.nextLine();
continue;
} else {
System.out.println(c);
}
str = s.nextLine();
}

}
} 答案补充 Java中实现 字符和ACSLL码的转换,
强制类型转换就行!
这样:
char c = 'c';
System.out.println((int)c);

或者直接赋值给int行变量也行!
这样:
char c = 'c';
int i = c;
System.out.println(i);

输出99
匿名用户
2013-08-21
展开全部
用ACSLL码输入的字母加一不就可以了吗?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-08-21
展开全部
//给你一个与上面不同的方法 数组做的用的是C# ,java应该也一样的.
char getNextChar(char c)
{
string s = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
char[] cs = s.ToCharArray();

int i = 0;
bool have = true;
foreach (char _c in cs)
{
if (_c == c)
{
have = true;
break;
}
i++;
}
if (have)
{
if (i == cs.Length - 1)
{
return cs[0];
}
else
{
return cs[i + 1];
}
}
else
{
throw new Exception("只允许输入字母!");
}
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式