`

【Java】Hashmap不能用基本的数据类型 Dimensions expected after this token

    博客分类:
  • Java
 
阅读更多

今天试了一下HahsMap,
采用如下形似定义
(这个下面是用了csdn的一位同仁的文章,仅作为讲解参考,请见谅)
  1. HashMap<int,String> map=new HashMap<int,String>();  
  2. map.put(1,"a");  
  3. map.put(2,"b");  
  4. map.put(1,"aq");  
  5. System.out.println(map.get(0));  
  6. System.out.println(map.get(1));  
  7. System.out.println(map.get(2));  


报错:Syntax error on token "int", Dimensions expected after this token


原因:引用类型原始类型没有搞清楚!

Java 提供两种不同的类型:引用类型原始类型(或内置类型)Intjava的原始数据类型,Integerjavaint提供的封装类。Java为每个原始类型提供了封装类。

原始类型   封装类

boolean      Boolean

char           Character

byte           Byte

short          Short

int              Integer

long           Long

float           Float

double      Double

引用类型和原始类型的行为完全不同,并且它们具有不同的语义。引用类型和原始类型具有不同的特征和用法,它们包括:大小和速度问题,这种类型以哪种类型的数据结构存储,当引用类型和原始类型用作某个类的实例数据时所指定的缺省值。对象引用实例变量的缺省值为 null,而原始类型实例变量的缺省值与它们的类型有关。


  1. HashMap<Integer,String> map=new HashMap<Integer,String>();  
  2. map.put(1,"a");  
  3. map.put(2,"b");  
  4. map.put(1,"aq");  
  5. System.out.println(map.get(0));  
  6. System.out.println(map.get(1));  
  7. System.out.println(map.get(2));  

 

分享到:
评论
1 楼 zhb8015 2013-03-28  
不好意思,没看太懂,不能用基本类型的原因是:
1、引用类型在 特征、用法 方面更有优势,包括:大小、速度、存储结构、缺省值?

还有一个问题请教一下,引用类型在做键值时需要注意什么?(这是一个面试题)

相关推荐

Global site tag (gtag.js) - Google Analytics