欢迎!请参阅 关于页面 了解更多关于该功能的信息。
观察到的行为
`(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 日改进了 improved-int-char-casting-error-messages.diff
评论人:alexmiller
{{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)。所以看起来当它们进行映射时,字符串会丢失它们的类型。我猜这是故意的吗?