欢迎!有关该功能的更多信息,请参阅关于页面。
观察到的行为
`(int "0") =>java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Character
`
预期行为(int "0") =>java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Integer或IllegalArgumentException `
评论由:jafingerhut
如果有人想改进这种情况下int的行为,他们也应该考虑对unchecked-int、char和unchecked-char的错误信息进行类似的改进。
评论由:michael-drogalis
在2013年1月6日改进了int_char_casting_error_messages.diff补丁。
评论由:alexmiller
{{int}}知道如何将数字和字符转换为int。它目前不支持字符串。最好是添加此行为或使int的文档字符串比“强制转换为int”更详细。
string-coerce-to-int.diff2013年9月4日修复了int和char的转换单元错误消息,并允许按照Alex Miller的建议从String转换为int。
值得注意的是,(map int (link: "1" "2" "3"))使用这个补丁将失败,并显示错误“ClassCastException java.lang.String cannot be cast to java.lang.Character"。这源于RT.java的intCast(Object)。所以看起来当它们在映射时,字符串会丢失它们的类型。我猜这是故意的吗?