在 Ballerina 中切片数组

Slicing an array in Ballerina

我有一个数组'b'如下,

int[] b = [1, 2, 3, 4, 5, 6, 7, 8];

并且我想对该数组进行切片以获得输出数组 'a',如

int[] a = [1,2,3];

目前,我正在使用以下步骤。

function main(string... args) {

    int[] b = [1, 2, 3, 4, 5, 6, 7, 8];

    int[] a;
    int val = 0;

    foreach e in  b{

        a[val] = e;
        io:println(a);
        val++;

        if (val>2) {
            break;
        }
    }
}

是否有更好的方法来执行此操作,或者 Ballerina 中是否有单独的方法?

通过使用 Ballerina 整数范围 [1] 数组可以像下面这样切片。

int[] b = [10, 22, 30, 40, 50, 60, 70, 80]; 
int[] a;
foreach i in 0 ... 2 {
    a[i]  = b[i];
}

[1] https://ballerina.io/learn/by-example/integer-ranges.html