我目前正在使用eclipse JAVA开发一个android项目,我刚刚编写了下面的方法,
ArrayList<string> question, modelAnswer, correctAnswer, answer1, answer2, answer3, picture, questionNo;
public void QuestionGenerator(String[][] array, int number ){
if (number > array.length){
number = array.length;
}
Collections.shuffle(Arrays.asList(array));
for (int i=0; i<number; i++){
question.add(array[i][0]);
modelAnswer.add(array[i][1]);
answer1.add(array[i][1]);
answer2.add(array[i][2]);
answer3.add(array[i][3]);
picture.add(array[i][4]);
questionNo.add(array[i][5]);
}
}
但我遇到的错误是“类型ArrayList中的方法add(R.string)不适用于那些数组列表的add函数的参数(String)”。有谁能建议我为什么这个?该方法无法处理2d数组或为什么?
由于
答案 0 :(得分:4)
尝试使用大写字符串:)
ArrayList<String> question, modelAnswer, correctAnswer, answer1, answer2, answer3, picture, questionNo;
并初始化ArrayLists:
ArrayList<String> question = new ArrayList<String>();
(...)
答案 1 :(得分:3)
也许您必须致电add(getString(R.string.YOUR_STRING_NAME))
答案 2 :(得分:0)
根据ArrayList声明,它只接受String数据。
但是如果尝试添加R.string.yourid,它是字符串资源的整数标识符。
所以你需要getString(R.string.yourid)然后将它添加到你的Arraylist
question.add(getString(R.string.yourid));
也因为你要添加String对象make ArrayList<String> question;