以下两行代码有何区别:
Integer in = (Integer)y;
和
Integer in = new Integer(y);
我想要将int
类型转换为Integer
类型,反之亦然。这是我的代码实现:
public class CompareToDemo {
public static void main(String[] args) {
// Integer x=5;
int y=25;
System.out.println(y+" this is int variable");
Integer in = (Integer)y;
//Integer in = new Integer(y);
if(in instanceof Integer){
System.out.println(in +" this is Integer variable");
}
}
}
Integer.valueOf()
。根据Java文档的说明,“如果不需要新的Integer实例,则通常应优先使用此方法而不是构造函数Integer(int),因为通过缓存经常请求的值,此方法可能会产生明显更好的空间和时间性能。” - Jens