2011-05-23 35 views
1

我开始今天groovy编码和我注意到,如果我把下面的代码:groovy是否会根据其hashCode/ASCII码将一个字符串“投”到一个整数?

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'

回答

2

As Jochen says here in the JIRA;如果需要,长度为1的字符串转换为字符(并把它变成一个int变量,它是假设这是你想要做什么)

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

int a = '12345' as int 

而且会将整数转换为int。

相关问题