Можем ли мы использовать функцию toString () со строковым буфером object-'sb '? - PullRequest
0 голосов
/ 22 июня 2019

Это программа для перестановки строки с сохранением позиции пробела.В этой проблеме с использованием или без использования функции toString() с sb выходной сигнал становится правильным.Одна вещь, которую я не понял, что sb - это объект StringBuffer, тогда как мы можем использовать объект в последнем операторе печати, поскольку объект должен быть преобразован в строковый формат.

это кодJDK 1.8.0

public static void main(String args[])
{
    Scanner sc=new Scanner(System.in);
    String st="";
    st=sc.nextLine();
    StringBuffer sb=new StringBuffer(st.replace(" ",""));
    sb=sb.reverse();
    for(int i=0;i<st.length();i++)
    {
        if(st.charAt(i)==' ')
        {
            sb.insert(i,' ');
        }
    }
    System.out.println(sb);

}

1 Ответ

2 голосов
/ 22 июня 2019

PrintStream (например, System.out или System.err) имеет несколько перегруженных println методов.Здесь, в частности, вы звоните println(Object).Этот метод вызывает String.valueOf своего аргумента и затем печатает его.Для ненулевого аргумента это эквивалентно вызову toString() для него.

...