Использование строителя строк для добавления - PullRequest
0 голосов
/ 30 октября 2019

Я создал объект строителя строк и использую его для добавления слов. Но это выдает ошибку.

package learningPackage;

    public class StringBuilder {
        public static void main(String[] args) {
            // TODO Auto-generated method stub

            String[] words = {"This", "is", "a", "sentence", "done","using", "string", "builder"};
            StringBuilder mySB = new StringBuilder();

            for (String word: words) {
                mySB.append(word);
                mySB.append(" ");
            }
        }
    }

Ожидается, что код будет работать нормально. однако это вызывает ошибку в mySB.append (word).

Ошибка: метод append (string) не определен для компоновщика строки типа

Ответы [ 2 ]

0 голосов
/ 30 октября 2019

Это связано с тем, что в StringBuilder нет метода или конструктора, который принимает StringBuilder в качестве аргумента. Ниже приведен список методов в StringBuilderClass:

StringBuilder append(boolean b)
StringBuilder append(char c)
StringBuilder append(char[] str)
StringBuilder append(char[] str, int offset, int len)
StringBuilder append(double d)
StringBuilder append(float f)
StringBuilder append(int i)
StringBuilder append(long lng)
StringBuilder append(Object obj)
StringBuilder append(String s)

Отсюда исключение.

Основными операциями над StringBuilder, которые недоступны в String, являются методы append () и insert (), которые перегружены, чтобы принимать данные любого типа. Каждый преобразует свой аргумент в строку, а затем добавляет или вставляет символы этой строки в последовательность символов в конструкторе строк. Метод добавления всегда добавляет эти символы в конец существующей последовательности символов, а метод вставки добавляет символы в указанной точке.

Примечание: Вы можете использовать любой метод String дляОбъект StringBuilder, сначала преобразуя построитель строк в строку с помощью метода toString () класса StringBuilder. Затем преобразуйте строку обратно в построитель строк с помощью конструктора StringBuilder (String str).

0 голосов
/ 30 октября 2019

Пожалуйста, переименуйте имя класса, и оно будет работать нормально. Проблема в конфликтующем имени класса.

...