java 2D Arraylist预测代码的输出
(链接:https://www.interviewbit.com/problems/array_2d/) 在调用performOps时,很难对以下代码执行试运行
答:[[1,2,3,4],[5,6,7,8],[9,10,11,12]]
ArrayList<ArrayList<Integer>> performOps(ArrayList<ArrayList<Integer>> A) {
ArrayList<ArrayList<Integer>> B = new ArrayList<ArrayList<Integer>();
for (int i = 0; i < A.size(); i++) {
B.add(new ArrayList<Integer>());
for (int j = 0; j < A.get(i).size(); j++) {
B.get(i).add(0);
}
for (int j = 0; j < A.get(i).size(); j++) {
B.get(i).set(A.get(i).size() - 1 - j, A.get(i).get(j));
}
}
return B;
}
谁能帮我理解一下吗
# 1 楼答案
尝试用变量值替换一个或两个循环。这将更容易理解这些问题,如果可能的话,在编辑器中编写代码,并一步一步地调试代码
我试过一个循环
顺便说一下,输出将是二维集合,每个内部集合元素的顺序相反
# 2 楼答案
输出将是
你一定是在尝试初始化A。这里不是这样。A的价值是
然后在问题中询问进一步代码的输出。请仔细阅读这个问题。如果你还需要什么,请联系我。干杯