【问题标题】:How to create a list of lists in Ballerina?如何在 Ballerina 中创建列表列表?
【发布时间】:2019-01-11 04:50:14
【问题描述】:

我需要在 Ballerina 中创建一个列表列表。在java中,我会简单地说List<List<String>>。我如何在芭蕾舞演员中做到这一点?

我有以下代码。

int[][] arr = [[1,2,3], [4,5,6]];

我需要将元素添加到第三个列表中,如下所示,这是不可能的,

arr[3][0] = 4;

【问题讨论】:

    标签: ballerina


    【解决方案1】:

    芭蕾舞演员有多维数组,你可以做

    
        int[][] arr = [[1,2,3], [4,5,6]];
    
    

    你可以在这里找到更多关于他们的信息link

    在您的第二个示例代码中,您在索引 3 处没有子数组。 您需要将一个空数组分配给索引 3,然后将其第 0 个元素设置为 4。

    
        arr[3] = [];
        arr[3][0] = 4;
        // or
        arr[3] = [4];
    
    

    【讨论】:

    • 我试过这个,我的问题是当我想添加第三个列表时它没有让我。 (例如:[[1,2,3], [4,5,6], [2,3,4]];)所以我猜初始化后行数是固定的?
    • 通过使用 arr[3] = [4, 0] 设法做到这一点。谢谢。
    • 任何这些组件数组的大小都不受限制,除非您明确限制它们。 int[][2] pairArray = [[1,2,3]] 由于违反约束而失败。
    【解决方案2】:

    为此,您可以在 Ballerina 中创建一个二维数组。 Ballerina 中的数组是动态长度值的可变列表 (link)。

    下面这组代码帮助我动态创建了一个二维数组。

    //dynamically initializing a 2D array in Ballerina v0.990.2
    int[][] iarray = [];
    int[] item1 = [];
    int[] item2 = [];
    
    item1[0] = 1;
    item1[1] = 2;
    
    item2[0] = 1;
    
    iarray[0] = item1;
    iarray[2] = item2;
    
    io:println(iarray);
    

    输出:[[1, 2], [], [1]]

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-02-04
      • 1970-01-01
      • 2021-09-16
      相关资源
      最近更新 更多