groovy根据hashCode / ASCII代码将一个字符串“强制转换”为整数?

时间:2011-05-23 10:21:05

标签: string groovy casting integer

我今天开始使用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'吗?

1 个答案:

答案 0 :(得分:2)

作为约亨says here in the JIRA;如果需要,将长度为1的字符串转换为字符(并将其放入int变量中,假设这是您想要的那样)

如果你想接受更大的数字,你可以这样做:

int a = '12345' as int

这会将整数转换为int。