继续问个小问题

javagodness 2005-03-09 08:31:15
public class bijiao {
public static void main(String[] args) {
Integer n1 = new Integer(47);
Integer n2 = new Integer(47);
System.out.println(n1 == n2);
System.out.println(n1 != n2);
}
}
问题一,
Integer n1=new Integer(47);
和int n1=47;有什么区别呢?
问题二,
如果把 Integer n1 = new Integer(47);
Integer n2 = new Integer(47);
放到前面去就无法编译了呢?
如下代码:
public class bijiao {
Integer n1 = new Integer(47);
Integer n2 = new Integer(47);
public static void main(String[] args) {

System.out.println(n1 == n2);
System.out.println(n1 != n2);
}
}
...全文
66 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
wenchaohu213 2005-03-09
  • 打赏
  • 举报
回复
同意楼上所说的。搞清楚类型就OK了。
JackKen 2005-03-09
  • 打赏
  • 举报
回复
问题一
Integer是一个类,是int的外覆类,关于它的方法可以查看doc。
int是java的基本类型。
问题二
是因为n1,n2,声明在类中是成员变量,要通过实例来调用。即要new一个bijiao对象来调用。
redex 2005-03-09
  • 打赏
  • 举报
回复
int是基本类型,而Integer是它的包装类,使用“类”的语义.

62,635

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧