为什么jdk1.4里面的map存放不了int型的建和值?

dd121011 2011-01-24 04:45:13
Map tempMap = new HashMap();

tempMap.put(1,2);
这样就报错。这是为什么?jdk版本的问题?
...全文
434 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
csch99 2011-01-25
  • 打赏
  • 举报
回复
int 不是对象,new Integer(1)就可以
XJAVASunjava 2011-01-24
  • 打赏
  • 举报
回复
JDK版本问题
  • 打赏
  • 举报
回复
2楼正解
liumingchang 2011-01-24
  • 打赏
  • 举报
回复
jdk1.4早就过时了啊
huntor 2011-01-24
  • 打赏
  • 举报
回复
for(Integer k : map.keySet()){
System.out.println(k);
}

没有问题、输出 null
lfm613625 2011-01-24
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 javasishen 的回复:]
引用 6 楼 afer198215 的回复:
自动包装器用起来 还得小心, 猜猜下面的代码会怎样:
Integer i1 = null;
Integer i2 = null;

map.put(i1,i2);

这段代码怎么了..我这样测试.没任何问题呀?
import java.util.HashMap;
import java.util.Iterator;
import j……
[/Quote]

你打印下key的值..
javasishen 2011-01-24
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 afer198215 的回复:]
自动包装器用起来 还得小心, 猜猜下面的代码会怎样:
Integer i1 = null;
Integer i2 = null;

map.put(i1,i2);
[/Quote]
这段代码怎么了..我这样测试.没任何问题呀?
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;

public class Test
{
public static void main(String[] args)
{
Map<Integer, Integer> map = new HashMap<Integer, Integer>();
Integer i1 = null;
Integer i2 = null;

map.put(i1, i2);

Iterator<Integer> it = map.keySet().iterator();
while(it.hasNext()){
System.out.println(map.get(it.next()));
}
}
}
输出结果为:null
想喝咖啡的貓 2011-01-24
  • 打赏
  • 举报
回复
自动包装器用起来 还得小心, 猜猜下面的代码会怎样:
Integer i1 = null;
Integer i2 = null;

map.put(i1,i2);
  • 打赏
  • 举报
回复
jdk1.5之后,Collection类库中的容器,都会自动装箱了,之前的版本的话,不能直接使用基本类型
lfm613625 2011-01-24
  • 打赏
  • 举报
回复
嗯,都是正解。
顶下...
  • 打赏
  • 举报
回复
JDK 5 以下的版本没有自动装箱功能,所以需要改成这样:

tempMap.put(Integer.valueOf(1), Integer.valueOf(2));

PS:自动装箱就是一个基本数据类型在需要 Object 参数的情况下会自动转换成为包装类型。
yuanyue0540 2011-01-24
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 zwj20061988 的回复:]

map中的key和value要是对象,不能是基本数据类型。jdk1.5之后有自动拆装箱功能,基本数据类型作为键或值时候可以自动装箱成它们对应的包装类。比如int自动变成Integer,这是个1.5新特性。
[/Quote]

JDK的问题。
三心不可得 2011-01-24
  • 打赏
  • 举报
回复
map中的key和value要是对象,不能是基本数据类型。jdk1.5之后有自动拆装箱功能,基本数据类型作为键或值时候可以自动装箱成它们对应的包装类。比如int自动变成Integer,这是个1.5新特性。

62,615

社区成员

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

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