我发现了一些奇怪的异常:
java.lang.ClassCastException: java.lang.Integer
cannot be cast to java.lang.String
怎么可能呢?每个对象都可以转换为String,不是吗?
代码是:
String myString = (String) myIntegerObject;
谢谢。
为什么这不可能:
因为String和Integer不在同一对象层次结构中。
Object
/ \
/ \
String Integer
您尝试的转换仅在相同的层次结构中有效,例如
Object
/
/
A
/
/
B
在这种情况下,(A) objB
或(Object) objB
或(Object) objA
将起作用。
因此,正如其他人已经提到的,要将整数转换为字符串,请使用:
String.valueOf(integer)
或Integer.toString(integer)
对于原始
要么
Integer.toString()
为对象。
本文向大家介绍在Java中将Double转换为Integer,包括了在Java中将Double转换为Integer的使用技巧和注意事项,需要的朋友参考一下 首先,初始化一个double值- 现在,使用intValue()方法将Double转换为Integer值- 示例 以下是在Java中将Double转换为Integer的程序- 输出结果
问题内容: 我写了一个函数将字符串转换为整数 我有一个字符串6042076399,它给了我错误: 这不是将字符串转换为整数的正确方法吗? 问题答案: 这是我更喜欢的方式: 编辑(2015年4月4日): 如下面的评论所述,实际上这样做更好:
问题内容: Java中的所有数字都应为int类型。以下行在Java> 1.5中是合法的 同样的机制去和实例。但是龙的作品完全不同。以下代码给出了编译时错误 Long对长类型使用自动装箱方法,因此 我看不到为什么不能将int赋给Long变量。关于这个问题有什么想法吗? 问题答案: 我认为问题不在于泛型转换原语和包装。问题是关于将int转换为java.lang.Long和将int转换为java.lan
问题内容: 我有一个长度为4的大型数据集,我想计算4个整数的每种特定组合出现的次数。这与计算文档中的单词频率非常相似。 我想创建一个, 将每个映射到正在运行的计数的列表,但是列表不使用原始类型。 所以我做了 我的数据存储为一个,所以我的循环应该像 我不确定在注释中需要什么代码才能完成将转换int[]为的工作Integer[]。也许我从根本上对正确的方法感到困惑。 问题答案: 使用Java 8,可以
我正在为一个类编写一个单元测试,如下所示: 现在,当我运行这段代码时,它给我一个错误,即我无法将强制转换为Java中的集合。 ps:有一个单独的类,名为,它的setter如下所示: 而我正在尝试使用上面的这种方法。
问题内容: 任何方式投来? 引发异常 问题答案: A 不是,因此强制转换将不起作用。请注意Double 类和double 原始类型之间的区别。另请注意,a 是a ,因此它具有方法 ,你可以使用该方法将值作为原始值获取int。