Метод замены строки не работает [закрыто]

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;
}
 MrLore30 окт. 2012 г., 07:41
@Shashank Кроме того, если ваше условие неверно, оно должно быть и (&&) заявление, а не или (||) Скажите, как обаnull а также"" недопустимые строки.
 Matthew Adams30 окт. 2012 г., 07:33
Скорее всего, отрицательные отзывыt объяснил проблему / как ваш вывод отличается от того, что вы ожидаете.
 John Dvorak30 окт. 2012 г., 07:34
@ MatthewAdams или потому что код не былправильно помечены доubercoolukс редактировать
 Lion30 окт. 2012 г., 07:33
Просто попробуй сделатьreturn str.replace(chr, chr1);, Это должно работать как ожидалось.

Ответы на вопрос(4)

 str.replace(chr, chr1);

полученную в результате замены всех вхождений oldChar в этой строке на newChar.замещать

Но вы не храните эту ценность. Таким образом, вы можете использовать следующий код

str = str.replace(chr, chr1);

убедитесь, что для String вы должны присвоить значение

 str = str.replace(chr, chr1);
 sunleo30 окт. 2012 г., 07:52
Вы хотите получить скрытую строку, ожидающую Adwait, я прав?
 Shashank30 окт. 2012 г., 07:50
но я должен в верхнем регистре только к 1-му символу строки, это происходит, но он заменяет каждый раз в строке, например, перед заменой строки = adwait после замены становится AdwAit ..

что вы не возвращаете результат из str.replace. Строки неизменны

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

Ваш ответ на вопрос