我今天开始使用groovy
编码,我注意到如果我采用以下代码:
int aaa = "6"
log.info(aaa)
我得到的输出是:
54 <-- (ASCII Code for '6')
如果我为aaa
分配超出0..9
范围的任何数字,我会收到一个类别转换例外。
看起来如果该字符串实际上是单个character
- groovy
转换其ASCII
代码/ hashCode
。
我试过这段代码:
int aaa = "A"
log.info(aaa)
我得到的输出是:
65 <-- (ASCII code for 'A')
官方原因是什么?
是因为groovy
会自动将"A"
更改为'A'
吗?
答案 0 :(得分:2)
作为约亨says here in the JIRA;如果需要,将长度为1的字符串转换为字符(并将其放入int变量中,假设这是您想要的那样)
如果你想接受更大的数字,你可以这样做:
int a = '12345' as int
这会将整数转换为int。