Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/392.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/193.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 将自定义对象列表转换为CharSequence_Java_Android - Fatal编程技术网

Java 将自定义对象列表转换为CharSequence

Java 将自定义对象列表转换为CharSequence,java,android,Java,Android,我有一个名为customObjectList的自定义对象列表。我希望它绑定到AlertDialog.Builder.setMultiChoiceItems(),首先需要将其转换为CharSequence, 我就是这样做的:customObjectList.toArray(新的字符序列[customObjectList.size()])但是我得到了这个错误: java.lang.ArrayStoreException: source[0] of type com.idea.customobject

我有一个名为
customObjectList
的自定义对象列表。我希望它绑定到
AlertDialog.Builder.setMultiChoiceItems()
,首先需要将其转换为CharSequence,
我就是这样做的:
customObjectList.toArray(新的字符序列[customObjectList.size()])
但是我得到了这个错误:

java.lang.ArrayStoreException: source[0] of type com.idea.customobject cannot be stored in destination array of type java.lang.CharSequence[]

正确的转换方法是什么?

错误的原因是,您试图创建的
CharSequence
对象没有实现
CharSequence
接口(您的
CustomObject
类)。如果这两种类型相同,您可以使用
toArray
方法,但它们不同。因此,我建议的另一种选择是手动操作。我假设您的
customObject
类具有某种字符串值,您希望在选项中显示该值,因此只需使用该值并执行for循环,如下所示:

CharSequence[] myArray = new CharSequence[customObjectList.size()];
for(int i = 0; i < customObjectList.size(); i++){
    myArray[i] = customObjectList.get(i).getTitle(); // Whichever string you wanna store here from custom object
}
CharSequence[]myArray=新的CharSequence[customObjectList.size()];
对于(int i=0;i

现在您只需使用
myArray
进行
setMultiChoiceItems
。希望您理解这个想法,我也明白了您的问题。

错误的原因是您试图创建一个
CharSequence
的东西,而该东西没有实现
CharSequence
接口(您的
CustomObject
类)。如果这两种类型相同,您可以使用
toArray
方法,但它们不同。因此,我建议的另一种选择是手动操作。我假设您的
customObject
类具有某种字符串值,您希望在选项中显示该值,因此只需使用该值并执行for循环,如下所示:

CharSequence[] myArray = new CharSequence[customObjectList.size()];
for(int i = 0; i < customObjectList.size(); i++){
    myArray[i] = customObjectList.get(i).getTitle(); // Whichever string you wanna store here from custom object
}
CharSequence[]myArray=新的CharSequence[customObjectList.size()];
对于(int i=0;i

现在您只需使用
myArray
进行
setMultiChoiceItems
。希望你明白这个想法,我也明白你的问题。

嘿,伙计,你解决了吗?嘿,伙计,你解决了吗?