Скопируйте CharArrayBuffer в другой CharArrayBuffer - PullRequest
2 голосов
/ 21 июня 2009

Как я могу скопировать CharArrayBuffer в другой CharArrayBuffer по указанному индексу в Java на Android?

developer.android.com / reference / android /…

CharArrayBuffer stringBuffer1 = new CharArrayBuffer(128); 
System.arraycopy("Phone", 0, stringBuffer1.data, 0, "Phone".length()); 

Но я получаю ArrayStoreException. Я выделил CharArrayBuffer на 128 . Я не понимаю это исключение

Ответы [ 2 ]

2 голосов
/ 21 июня 2009

из документов

System.arraycopy(Object src, int srcPos, Object dest, int destPos, int length)

Копирует массив из указанного исходного массива, начиная с указанной позиции, в указанную позицию целевого массива.

ArrayStoreException Брошенный, чтобы указать, что была сделана попытка сохранить неправильный тип объекта в массив объектов. Например, следующий код генерирует ArrayStoreException:

 Object x[] = new String[3];
 x[0] = new Integer(0);

следующая строка кода

System.arraycopy("Phone", 0, stringBuffer1.data, 0, "Phone".length());

пытается поместить String в CharArrayBuffer.

0 голосов
/ 21 июня 2009

ArrayStoreException из-за типа. Преобразовать «Телефон» в CharArrayBuffer. (Размер массива не является проблемой. Он выдаст исключение IndexOutOfBoundsException, если оно есть.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...