JAVA Hashmap不能用基本的数据类型
今天开始学习Java。。。
转载:http://moto0421.iteye.com/blog/1143777
今天试了一下HahsMap,
采用如下形似定义
(这个下面是用了csdn的一位同仁的文章,仅作为讲解参考,请见谅)
- HashMap<int,String> map=new HashMap<int,String>();
- map.put(1,"a");
- map.put(2,"b");
- map.put(1,"aq");
- System.out.println(map.get(0));
- System.out.println(map.get(1));
- System.out.println(map.get(2));
报错:Syntax error on token "int", Dimensions expected after this token
原因:引用类型和原始类型没有搞清楚!
Java 提供两种不同的类型:引用类型和原始类型(或内置类型)。Int是java的原始数据类型,Integer是java为int提供的封装类。Java为每个原始类型提供了封装类。
原始类型 封装类
boolean Boolean
char Character
byte Byte
short Short
int Integer
long Long
float Float
double Double
引用类型和原始类型的行为完全不同,并且它们具有不同的语义。引用类型和原始类型具有不同的特征和用法,它们包括:大小和速度问题,这种类型以哪种类型的数据结构存储,当引用类型和原始类型用作某个类的实例数据时所指定的缺省值。对象引用实例变量的缺省值为 null,而原始类型实例变量的缺省值与它们的类型有关。
- HashMap<Integer,String> map=new HashMap<Integer,String>();
- map.put(1,"a");
- map.put(2,"b");
- map.put(1,"aq");
- System.out.println(map.get(0));
- System.out.println(map.get(1));
- System.out.println(map.get(2));
清醒时做事,糊涂时读书,大怒时睡觉,独处时思考; 做一个幸福的人,读书,旅行,努力工作,关心身体和心情,成为最好的自己
-- 共勉