通过Java中的循环将对象添加到数组

阿杰·桑德(Aj Sunder)

每个顶点类型的对象都有一个名为“邻接”的数组,该数组由边缘类型的对象组成:

class Vertex
{
public Edge[] adjacencies;
}

我有一个名为vertexList的Vertex对象的ArrayList。每个Edge对象均由(顶点目标,到达该点的成本)组成,其中成本来自成本矩阵:

vertexList.get(0).adjacencies = new Edge[]{ new Edge(vertexList.get(0), intMatrix[0][0]),
                                 new Edge(vertexList.get(1), intMatrix[0][1]),
                                 new Edge(vertexList.get(2), intMatrix[0][2]),
                                 new Edge(vertexList.get(3), intMatrix[0][3]),
                                 new Edge(vertexList.get(4), intMatrix[0][4]),
                                 new Edge(vertexList.get(5), intMatrix[0][5]),
                                 new Edge(vertexList.get(6), intMatrix[0][6])};
vertexList.get(1).adjacencies = new Edge[]{ new Edge(vertexList.get(0), intMatrix[1][0]),
                                 new Edge(vertexList.get(1), intMatrix[1][1]),
                                 new Edge(vertexList.get(2), intMatrix[1][2]),
                                 new Edge(vertexList.get(3), intMatrix[1][3]),
                                 new Edge(vertexList.get(4), intMatrix[1][4]),
                                 new Edge(vertexList.get(5), intMatrix[1][5]),
                                 new Edge(vertexList.get(6), intMatrix[1][6])};

这是经过硬编码的,可以工作,但是具有七个不同的顶点却并不优雅,我想通过循环简化这些对象和数组的创建。我没有运气就尝试了以下方法:

for (int b = 0; b < 7; b++){
       vertexList.get(b).adjacencies = new Edge[]{
           for (int p = 0; p < 7; p++){
               new Edge(vertexList.get(p), intMatrix[b][p]);
           }
       }
   }

我的IDE告诉我第二个for循环是“表达式的非法开始”是否可以用循环创建边?谢谢!

bgse

您不能简单地将某些实例化为必杀技,这就是您要在内部循环中尝试做的事情。除此之外,不允许在静态数组初始化内启动循环。

首先在辅助变量中创建Edge []:

Edge[] myNewEdge = new Edge[7];
for(i=0; i<7;i++) {
    myNewEdge[i] = new Edge(...);
}

然后将其分配到您的vertexList中:

vertexList.get(b).adjacencies = myNewEdge;

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在Java中,如何通过对象的构造函数将对象添加到数组?

来自分类Dev

将对象添加到Java MongoDB中的数组

来自分类Dev

在angularjs的for循环中将对象添加到数组

来自分类Dev

循环时将对象添加到数组

来自分类Dev

TypeScript通过推将对象添加到数组

来自分类Dev

通过分组将对象添加到NSMutable数组

来自分类Dev

将对象添加到预分配的对象数组中

来自分类Dev

将对象添加到预分配的对象数组中

来自分类Dev

使用useReducer将对象添加到数组中的数组

来自分类Dev

使用redux将对象添加到数组中的数组

来自分类Dev

将对象添加到带有for循环的列表中?

来自分类Dev

如何通过输入形式将对象数组添加到html列表中?

来自分类Dev

将对象添加到对象数组

来自分类Dev

将对象添加到对象数组

来自分类Dev

如何通过拖放将对象添加到UITableView中?

来自分类Dev

将对象添加到构造函数中的数组

来自分类Dev

将对象的值添加到数组的每个元素中

来自分类Dev

将对象添加到打字稿中的数组

来自分类Dev

将对象添加到构造函数中的数组

来自分类Dev

将对象从测试文件添加到类中的数组?

来自分类Dev

将对象添加到数组,然后在表中显示

来自分类Dev

反应:将对象添加到数组中

来自分类Dev

将对象添加到服务中的数组

来自分类Dev

PHP - 将对象添加到子数组中

来自分类Dev

在TypeScript中将对象添加到函数中的数组

来自分类Dev

Json:将对象添加到数组

来自分类Dev

将对象添加到数组

来自分类Dev

将对象添加到数组

来自分类Dev

将对象添加到数组末尾