字符串替换方法不起作用
public static String capitalise(String str) { if (str != null || !"".equals(str)) { char chr=str.charAt(0); String check= Character.toString(chr); String check1= check.toUpperCase(); char chr1=check1.charAt(0); str.replace(chr, chr1); return str; } else { System.out.println("Not a valid String"); } return str; }
您的问题是您没有从str.replace返回结果。 字符串是不可变的
为什么你不简单地使用:
String str = "THIS IS my TEST strinG"; String my_string = str.substring(0,1).toUpperCase() + str.substring(1).toLowercase();
请确保您必须为String分配值
str = str.replace(chr, chr1);
str.replace(chr, chr1);
返回一个新字符串,该字符串是使用newChar替换此字符串中出现的所有oldChar。 更换
但是你没有存储这个价值。 所以你可以使用以下代码
str = str.replace(chr, chr1);