You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

带浮点后缀的字符串数字字面量是否为Ballerina合法CLI参数?

问题:Ballerina CLI参数是否需遵循langlibs的浮点类型后缀规则?

根据Ballerina规范,langlibs中float和decimal类型的fromString()方法不允许使用浮点类型后缀(FloatingPointTypeSuffix)。那CLI参数是否也要遵守这个规则?比如针对以下Ballerina代码,传递"12.53d"作为CLI参数是否有效?

import ballerina/io;

public function main(decimal d) {
    io:println(d);
}
回答:

传递"12.53d"作为CLI参数是无效的,CLI参数的解析逻辑和fromString()方法遵循同一套规范,同样不允许使用浮点类型后缀。

Ballerina的CLI参数解析对于数值类型(包括decimal和float),本质上复用了langlibs中对应类型的字符串解析逻辑,和fromString()方法的规则完全一致。所以当你传入带d后缀的字符串时,CLI会无法正确解析该参数,直接抛出参数格式错误的异常。

比如执行命令bal run your_file.bal 12.53d,会收到类似这样的错误提示:

error: invalid argument '12.53d' for parameter 'd' (expected decimal)

内容的提问来源于stack exchange,提问作者lnash

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 12:47:13