作者chessjim (jim)
看板java
标题Re: [问题] HashTable型态阵列初始化错误
时间Fri Oct 2 12:02:37 2009
※ 引述《neigence ()》之铭言:
: : import java.util.*;
: : public class HTArray{
: : private Hashtable<Integer, String>[] MidU;
: : public HTArray(){
: : MidU=(Hashtable<Integer, String>[])new Object[61];
: MidU=new Hashtable<Integer,String>[61];
: 你可以将Hashtable cast 成 Object
: 但不可以将Object cast 成 Hashtable
: 你可以去google "多型"的用法和意义
这是泛型阵列,所以上述讲法是错的
有的网站写成MidU = (Hashtable[])new Hashtable[61];
可是当我用MidU[0].put(value1,value2)时
会出现java.lang.NullPointerException
at GetReviewerRating.GetRatingAndBookName(GetR\
eviewerRating.java:268)
at GetReviewerRating.main(GetReviewerRating.ja\
va:384)
41th User's Reading:
Exception in thread "main" java.lang.NullPointerExce\
ption
at GetReviewerRating.main(GetReviewerRating.ja\
va:389)
请问我的code哪里要修正?
http://paste.bradleygill.com/index.php?paste_id=21702
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 203.68.164.53
1F:→ kanandg1:这已经跟型态没关系了吧?您的Mid[0]可能是null喔 10/02 12:40
2F:→ kanandg1:foreach MidU, MidU[N]=new Hashtable();这样? 10/02 12:43
3F:→ chessjim:感谢你,Problem solved!! 10/02 12:59