怎么动态的创造一个类的N个对象,并且将他们一一对应于各自的一个索引,如:我创建了N个BOOK类的对象,用了一个BOOK[]来保存各自对象的信息,又创建了一个int n[]作为对各个BOOK对象的索引,我怎么做才能使他们一一对应起来!!
谢谢了!!
我的理解是:索引值就直接是一组数据:0,1,2,3.....可以直接赋值吧!?
比如(针对上面的列子):
while(true){
     BOOK book=new BOOK();
     BOOK[i]=book;
     i++;
}
那么我就可以创建N个book,然后依次赋给BOOK[1],BOOK[2],BOOK[3]...那么BOOK[i]其中的i就为索引值,但是好像题目给的是用一个数组作为索引值!!
请教高手指点一下!!
谢谢了!!

解决方案 »

  1.   

    呵呵
    就是啊
    map很适合楼主的要求
    不过要主页覆盖它的两个方法
      

  2.   

    map.put(key, value)
    一一对应
      

  3.   

    这样
    while(true){
        BOOK book=new BOOK();
        BOOK[i]=book;
        i++;

    也可以吗?
    有点看不懂……
      
      

  4.   

    不好意思,可能是我没有表述清楚吧!!再给大家说明一遍,我在做那个大一的课程设计:出版物管理系统,主要有添加,查找,删除等一些基本功能,我想建一本书book(它是BOOK类的一个对象)后,把它赋给BOOK []数组,就有了:BOOK [] b=new BOOK[50];由于我要建多本书,所以用到for(int i=0;i<5;i++){  b[i]=book  },
    由此就可以把多本书分别赋给不同的BOOK[]数组,但是我主要是想再给每本书加个索引值!!就不知道该怎么做了,请大家帮帮忙!!
    谢谢!!
      

  5.   

    一样一样的啊
    你for(int i=0;i <5;i++){  b[i]=book  }的时候for里面用map就可以了有key有value
    其它地方用b[]的时候直接用map也可以啊
      

  6.   

    恩,好像没有用过map也
    我去看看,试着用下吧!!
    呵呵,谢了!!
      

  7.   

    除了Map还有List,用上泛型类型就不需要转换了
    List<Book> list=new ArrayList<Book>();
    //添加书
    list.add(book1);
    list.add(book2);
    list.add(book3);
    //遍历
    for(Book book:list)
    {
        System.out.println(book.getBookName());
    }取出来的时候可以Book book=list.get(0);