将CharArrayBuffer复制到另一个CharArrayBuffer

时间:2009-06-21 04:35:02

标签: java android

如何在Android上的Java中的指定索引处将CharArrayBuffer复制到另一个CharArrayBuffer

developer.android.com/reference/android/...

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

但我得到ArrayStoreException。我已将CharArrayBuffer分配为 128 。我不明白这个例外

2 个答案:

答案 0 :(得分:2)

来自文档

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

答案 1 :(得分:0)

ArrayStoreException是因为一个类型。将“Phone”转换为CharArrayBuffer。 (数组的大小不是问题。如果是,则抛出IndexOutOfBoundsException。)