ArrayList.add在方法中不起作用

时间:2011-12-09 13:29:05

标签: java android arraylist

我目前正在使用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数组或为什么?

由于

3 个答案:

答案 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;