2015-09-15 12 views
0

Я пытаюсь создать массив stringbuffers по:создание массива stringbuffers

StringBuffer[] rotor={"jndskfnjl","kjbsdbfkj","njkfdn"}; 

и это показывает ошибку «строка не может быть преобразована в StringBuffer». , но я могу создать массив строк без каких-либо проблем, и я могу создать объявление отдельных строковых буферов таким же образом, как строки без необходимости их преобразования.

Пожалуйста, расскажите, как я могу создать массив струнных буферов.

+0

Добавить язык, язык Java или? –

+0

Какой язык программирования вы используете? – Mike

+0

Извините, я добавил java tag сейчас – overloood

ответ

3

Вам нужно будет пройти и создать объекты StringBuffer самостоятельно. Это не такой объект, как String, где вы можете создать новый без конструктора; вам действительно нужно создать экземпляр каждый.

StringBuffer[] rotor = {new StringBuffer("jndskfnjl"), 
         new StringBuffer("kjbsdbfkj"), 
         new StringBuffer("njkfdn")}; 
0

Вы создаете массив из StringBuffer, он будет ожидать список объектов того же типа. Он не преобразует String s в объект StringBuffer. Потому что эти два совершенно разных типа в java. StringBuffer предоставляет конструктор для создания объекта с использованием строковых литералов. Вам нужно вызвать их вручную.

Вы можете преобразовать массив String в массив StringBuffer, итерации по петле.

String array[] = new String[]{"jndskfnjl","kjbsdbfkj","njkfdn"}; 
StringBuffer buffers[] = new StringBuffer[array.length]; 
for (int i = 0; i<array.length; i++) { 
    buffers[i] = new StringBuffer(array[i]); 
} 
+0

@EJP спасибо за воспитание. – YoungHobbit