Java迭代1D数组和2D数组

Java迭代1D数组和2D数组,java,arrays,loops,Java,Arrays,Loops,我有一组一维的问题和一组二维的答案。我试图打印出一个问题和该问题的多项选择答案,并获取用户输入,然后返回并获取第二个问题,并打印出2d数组中的多项选择答案。对不起,我弄糊涂了。 代码: 我想打印“最喜欢的糖果”,然后打印1-8个糖果,然后打印“霍格沃茨最喜欢的科目”,然后打印1-10个科目,然后打印“梦想假期”,然后打印1-7个假期 我的代码是垃圾,但这里是: public void printQuestion(){ for (rowQ = 0; rowQ <= questio

我有一组一维的问题和一组二维的答案。我试图打印出一个问题和该问题的多项选择答案,并获取用户输入,然后返回并获取第二个问题,并打印出2d数组中的多项选择答案。对不起,我弄糊涂了。 代码:

我想打印“最喜欢的糖果”,然后打印1-8个糖果,然后打印“霍格沃茨最喜欢的科目”,然后打印1-10个科目,然后打印“梦想假期”,然后打印1-7个假期

我的代码是垃圾,但这里是:

public void printQuestion(){


    for (rowQ = 0; rowQ <= questions.length; rowQ++){
        System.out.println(questions[rowQ]);
        for(int rowS = rowQ; rowS <= rowS; rowS++){
            for(int colS = rowS; colS <= selection[rowS].length; colS++){
            System.out.println(selection[rowS][colS]);

        }
    }
}
public void printQuestion(){

因为(rowQ=0;rowQ因为你说你的代码不好,所以我有幸完全重写了它,它对我很有用:

for (int i = 0 ; i < questions.length ; i++){
    System.out.println(questions[i]);
    for(int j = 0 ; j  < selection[i].length ; j++){
        System.out.println(selection[i][j]);
    }
}
for(int i=0;i

这背后的想法是为每个问题打印出选择数组中与问题数组具有相同索引的所有答案,直到该数组的末尾

当前发生了什么?您有什么具体问题?您采取了什么步骤来调试/解释问题?问题是什么?您的迭代停止在
rowQ==question.length
并且您正在越界异常。您的所有迭代。从
更改迭代检查您正在混淆行和列指示符在第3行和第4行上的工作方式。有效的数组索引是
0
array.length-1
-在
中丢失
=
,rowQ非常感谢您的工作非常好!!!!所以选择[i]。长度是它打印到与问题对应的索引末尾的方式吗?如果有意义的话。是的选择[i]。长度与问题和所有答案/选择的长度相对应顺便说一句,如果答案回答了您的问题,那么社区最好签署我的答案作为解决方案。(这对我来说也很好:-)因为它提高了我的评级)
for (int i = 0 ; i < questions.length ; i++){
    System.out.println(questions[i]);
    for(int j = 0 ; j  < selection[i].length ; j++){
        System.out.println(selection[i][j]);
    }
}