字符串替换方法不起作用

时间:2012-10-30 06:30:13

标签: java

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;
}

4 个答案:

答案 0 :(得分:2)

您的问题是您没有从str.replace返回结果。 字符串是不可变的

答案 1 :(得分:2)

为什么你不单纯使用:

String str = "THIS IS my TEST strinG";
String my_string = str.substring(0,1).toUpperCase() + str.substring(1).toLowercase();

答案 2 :(得分:1)

请确保您必须为String指定值

 str = str.replace(chr, chr1);

答案 3 :(得分:0)

 str.replace(chr, chr1);

返回一个新字符串,该字符串是使用newChar替换此字符串中所有出现的oldChar。 replace
但是你没有存储这个价值。所以你可以使用以下代码

str = str.replace(chr, chr1);