java - ItemRegister Iterator -
i trying create item register register items inside rooms.
in room class have
/** * gets item description */ public arraylist<item> getitem() { return items; } and in item register have
public class itemregister { private hashmap<string,item> items; /** * constructor objects of class itemregister */ public itemregister() { items = new hashmap<string,item>(); } /** * register items in hashmap */ public void register(item a) { items.put(a.getdescription(),a); } public void register(arraylist<item> a) { iterator<item> = a.iterator(); while (i.hasnext()) { room room = i.next(); if (room.getitem() != null && room.getitem().equals(a)) { } else{ } } } } i trying complete iterator cycle through room , if finds item inside room register placing hashmap
hopefully enough going:
import java.util.*; public class itemregister{ public static void main(string []args){ itemregister ir = new itemregister(); } // storing items registered here private hashmap<string,item> items; /** * constructor objects of class itemregister */ public itemregister(){ items = new hashmap<string,item>(); arraylist<room> roomlist = new arraylist<>(); roomlist.add( new room( new item("item a") ) ); roomlist.add( new room( new item("item b") ) ); roomlist.add( new room( new item("item c") ) ); roomlist.add( new room( new item("item d") ) ); system.out.println( "size of registered items:" + items.size() ); // register item item aitem = new item("item a"); register( roomlist, aitem ); /// print whatever in register system.out.println( "size of registered items:" + items.size() ); system.out.println( "registered items:" ); for( item item : items.values() ){ system.out.println( item.getdescription() ); } system.out.println( "---- end ----" ); // register b item item bitem = new item("item b"); register( roomlist, bitem ); /// print whatever in register system.out.println( "size of registered items:" + items.size() ); system.out.println( "registered items:" ); for( item item : items.values() ){ system.out.println( item.getdescription() ); } system.out.println( "---- end ----" ); } /** * register items in hashmap */ public void register(item a){ items.put(a.getdescription(), a); system.out.println( "registered item" ); } public void register(arraylist<room> roomlist, item a){ iterator = roomlist.iterator(); while (i.hasnext()) { room room = (room)i.next(); if (room.getitem() != null && room.getitem().equals(a)){ register( room.getitem() ); } } } /* class item */ protected class item{ private string description; item(string description){ this.description = description; } public string getdescription(){ return this.description; } public boolean equals(object o) { if (this == o) { return true; } if (!(o instanceof item)) { return false; } item item = (item) o; if (!description.equals(item.description)) { return false; } return true; } } /* class room */ protected class room{ private item item; room( item item ){ this.item = item; } public item getitem(){ return this.item; } } }
Comments
Post a Comment