【发布时间】:2014-09-18 21:38:57
【问题描述】:
我正在尝试存储一个字符串并确定它是大写/小写字母还是数字,如果字符是小写字母,则以大写字母重新显示字符,如果字符是大写字母,则重新显示小写字符 如果字符是数字,则将其显示为星号。我可以用数字来实现,但如果我为程序不断循环的字母包含 .toString().toLowerCase() 或 .toUpperCase() 。我该怎么办?
public class CharacterArray {
public static void main(String[] args) {
StringBuilder input = new StringBuilder("800 Test St NY");
for (int i = 0; i < input.length(); i++) {
System.out.println(input.charAt(i));
if(Character.isDigit(input.charAt(i))){
input.replace(i,i+1,"*");
}
else if(Character.isUpperCase(input.charAt(i))) {
input.replace(i, i+1,input.toString().toLowerCase());
}
else if(Character.isLowerCase(input.charAt(i))) {
input.replace(i, i+1,input.toString().toUpperCase());
}
System.out.println(input);
}
}
}
【问题讨论】:
-
请修正你的缩进
-
您使用 StringBuilder 而不仅仅是 String 有什么原因吗?
-
我猜是因为它接近于可变字符串。
标签: java stringbuilder