我正在尝试使用以下代码遍历2 d数组行。问题是它转到下一列而不是行中的下一个元素,当我尝试将列放在外面时,由于内部行循环,它会拾取2个元素。有更简单的方法吗?
这是我第一次发帖,我尝试搜索解决方案,但没有找到。任何帮助将不胜感激。 TIA。
for (int rowCount = 1; rowCount < data.length; rowCount++) {
for (int colIndex = 0; colIndex < data[rowCount].length; colIndex++) {
String data_parameter;
data_parameter = data[rowCount][colIndex];
}
}
LoginID Password Data1 Data2
login1 mercury test 1 1234
login2 mercury test2 1234
答案 0 :(得分:0)
只需切换它们就可以了
for (int colIndex = 0; colIndex < data!=null ? data[0].length : -1 ; colIndex++) {
for (int rowCount = 1; rowCount < data.length; rowCount++) {
String data_parameter = data[rowCount][colIndex];
}
}
r-&gt; row&amp; c-&gt;列
元素:
r1c1 r1c2 r1c3
r2c1 r2c2 r2c3
r3c1 r3c2 r3c3
代码:
public static void main(String[] args) {
String [][] val = {{"r1c1", "r1c2", "r1c3"},
{"r2c1", "r2c2", "r2c3"},
{"r3c1", "r3c2", "r3c3"}};
for(int row =0;row <val.length; row++){
for(int col =0;col <val[0].length; col++){
System.out.print(val[row][col]+" ");
}
System.out.println();
}
System.out.println("**NEXT**");
for(int col =0;col <val[0].length; col++){
for(int row =0;row <val.length; row++){
System.out.print(val[row][col]+" ");
}
System.out.println();
}
}
输出:
r1c1 r1c2 r1c3
r2c1 r2c2 r2c3
r3c1 r3c2 r3c3
**NEXT**
r1c1 r2c1 r3c1
r1c2 r2c2 r3c2
r1c3 r2c3 r3c3
选择你想要的!!! :p;)