使用 For 循环将所有小写字母设置为大写字母
Using a For Loop to set all lower case to uppercase
如何使用 for 循环将字符串的所有小写字母设置为大写字母?
这就是我所做的,但是我遇到了两个编译器错误,
The method setCharAt(int, char)
is undefined for the type
java.lang.String
[line 7]
Array cannot be resolved [line 12]
public static String allUpperCases(String toEncode){
int length = toEncode.length();
for (int i = 0; i < length; i++){
char ch = toEncode.charAt(i);
if (Character.isLowerCase(ch)){
toEncode.setCharAt(i, Character.toUpperCase(ch));
}
}
return toEncode;
}
您不需要使用 for 循环来将字符串设置为小写或大写。您可以使用 myString = myString.toLowerCase();
。反之,则有相反的:myString = myString.toUpperCase();
。您真的应该阅读 String API。
关于您的错误:
String
类型在 Java 中没有 setCharAt()
函数。那是因为 String
,至少在 Java 中是不可变类型。当您 "change" 一个字符串时,除非您正在使用 StringBuilder
或修改基础 char
数组,否则您实际上是在为变量分配一个新的 String
。
我无法诊断出您的 Array cannot be resolved
错误,因为我在您的代码中没有看到数组。
如果你只想让字符串全部大写,Java中有一个函数:
yourstring.toUpperCase();
您可以只使用一个操作!
my_string = my_string.toUpperCase();
如何使用 for 循环将字符串的所有小写字母设置为大写字母?
这就是我所做的,但是我遇到了两个编译器错误,
The method
setCharAt(int, char)
is undefined for the typejava.lang.String
[line 7]Array cannot be resolved [line 12]
public static String allUpperCases(String toEncode){
int length = toEncode.length();
for (int i = 0; i < length; i++){
char ch = toEncode.charAt(i);
if (Character.isLowerCase(ch)){
toEncode.setCharAt(i, Character.toUpperCase(ch));
}
}
return toEncode;
}
您不需要使用 for 循环来将字符串设置为小写或大写。您可以使用 myString = myString.toLowerCase();
。反之,则有相反的:myString = myString.toUpperCase();
。您真的应该阅读 String API。
关于您的错误:
String
类型在 Java 中没有 setCharAt()
函数。那是因为 String
,至少在 Java 中是不可变类型。当您 "change" 一个字符串时,除非您正在使用 StringBuilder
或修改基础 char
数组,否则您实际上是在为变量分配一个新的 String
。
我无法诊断出您的 Array cannot be resolved
错误,因为我在您的代码中没有看到数组。
如果你只想让字符串全部大写,Java中有一个函数:
yourstring.toUpperCase();
您可以只使用一个操作!
my_string = my_string.toUpperCase();