我需要创建一个函数,使用charAt
方法将所有大写字符设为小写。我尝试使用类型转换将int
值更改为char
但在此之后就丢失了。
/********************************************************************************
This function will calculate the integer average of characters in the array
********************************************************************************/
public static void lowerCase(char[] letter) {
char mean;
mean = (char) ((int) ch + 32);
}
答案 0 :(得分:8)
哦,实际上你不需要使用charAt来检查它。只需将所有内容转换为小写。这不会影响已经是小写的字符,并将大写字符转换为小写。这就是你所需要的。
您无需将character array
转换为string object
,然后使用String.toLowerCase
方法,因为它仅在内部使用Character.toLowerCase
方法。
public static void average( char [] letter ) {
for (int i = 0; i < letter.length; i++) {
letter[i] = Character.toLowerCase(letter);
}
System.out.println(Arrays.toString(letter));
}
答案 1 :(得分:2)
如果您只想使用charAt,可以尝试:
String test = "fasdWADFASD242134";
StringBuilder result = new StringBuilder(test);
for (int i = 0; i < test.length(); i++) {
char ch = test.charAt(i);
result.setCharAt(i, ch >= 'A' && ch <= 'Z' ? (char) (ch + 'a' - 'A') : ch);
}
System.out.println("result = " + result);
如果你有一个char数组,你可以使用:
public static void toLower(char[] letter){
for (int i = 0; i < letter.length; i++) {
char ch= letter[i];
letter[i]= ch >= 'A' && ch <= 'Z' ? (char) (ch + 'a' - 'A') : ch;
}
}
答案 2 :(得分:1)
如果您不必使用charAt()......
public static void average( char [] letter )
{
String str = new String(letter);
System.out.println("The value is "+str.toUpperCase());
}
答案 3 :(得分:1)
假设您想单独处理字符(如charAt):
char c = letter[i]; // i = 0...len(letter-1)
char upperC = Character.toLowerCase(c);
如果您实际上不想使用charAt:
String lowerCaseVersion = (new String(letter)).toLowerCase();
答案 4 :(得分:0)
“abcdefghijklmnopqrstuvwxyz”.charAt(character - 'A')
答案 5 :(得分:0)
答案 6 :(得分:0)
就这样做:
String string = "some string";
System.out.println(string.toUpperCase());
String
类有一个方法toUpperCase()和toLowerCase(),您可以使用它将String
转换为大写或小写字母,而您不需要使用charAt
方法(如果您需要转换特定字母)。