你如何在 Ballerina 中获取变量的类型?

How do you get the type of a variable in Ballerina?

如何在 Ballerina 中获取变量的类型?

我知道布尔检查是可能的,如下所示:

import ballerina/io;

public function main() {
    any x = "This is a test";
    io:println(x is string); // Evaluates to true
    io:println(x is float); // Evaluates to false
}

在Python中,我们使用type(variable)得到类型,在Java中是这样的:

String a = "test";
a.getClass().getName()

我们如何在 Ballerina 中做到这一点?我试着查看文档,我能找到的最接近的是 lang.typedesc.

您可以使用 typeof expression 获取 Ballerina 中任何变量的类型。

import ballerina/io;

public function main() {
    var x = 5;
    io:println(typeof x);
}

有关详细信息,请参阅下面语言规范的 "Typeof expression" 部分。

https://ballerina.io/spec/lang/2019R3/#section_6.25