所以,我用 C++ 轻松完成了一个项目,却意识到我应该用 Java 编写它。这没什么大不了的,除了我的代码使用多维 vector ,例如:
vector <vector<int> > arr
Java 中是否有等效的东西可以提供相同的结果而无需彻底重写程序?
这是我在翻译时遇到问题的 C++ 程序的代码片段:
vector <vector <int> > arr;
cin >> n;
while (n > 0)
{
vector <int> row;
int u;
for (int i = 0; i < n ; ++i)
{
cin >> u;
row.push_back(u);
}
arr.push_back(row);
n = comb(row.size(), k);
k++;
}
for (int i = 0; i < arr.size(); i+=2)
for (int j = 0; j < arr[i].size(); ++j)
sum += arr[i][j];
for (int i = 1; i < arr.size(); i+=2)
for (int j = 0; j < arr[i].size(); ++j)
diff += arr[i][j];
最佳答案
ArrayList
如果您将其声明为 ArrayList<ArrayList<Integer>>
,则应该提供您需要的功能.您调用 push_back()
的电话相当于调用 add()
.您将丢失数组索引访问符号,但这可以通过链接调用 get()
来解决。 .
关于java - 如何将多维 vector 从 C++ 转换为 Java?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14689371/