我有一个任务,我可以使用最简单的方法 - 数组。现在我想进一步使用一些更复杂的Java特性(比如集合)来重做它,但是我从来没有使用过比2d矩阵更复杂的任何东西。我应该看什么以及如何开始。塔应成为一个集合?这里的任务:使用集合重写数组
我们有两个班级 - 塔和块。塔从块建造。 安德这里的示例代码进行测试:
Block k1=new Block("yellow",1,5,4);
Block k2=new Block("blue",2,2,6);
Block k3=new Block("green",3,4,2);
Block k4=new Block("yellow",1,5,4);
Tower tower=new Tower();
tower.add(k1,k2,k3);
"Added 3 blocks."
System.out.println(tower);
"block: green, base: 4cm x 3cm, thicknes: 2 cm
block: blue, base: 6cm x 2cm, thicknes: 2 cm
block: yellow, base: 5cm x 4cm, thicknes: 1 cm"
tower.add(k2);
"Tower already contains this block."
tower.add(k4);
"Added 1 block."
System.out.println(tower);
"block: green, base: 4cm x 3cm, thicknes: 2 cm
block: blue, base: 6cm x 2cm, thicknes: 2 cm
block: yellow, base: 5cm x 4cm, thicknes: 1 cm
block: yellow, base: 5cm x 4cm, thicknes: 1 cm"
tower.delete(k1);
"Deleted 1 block"
tower.delete(k1);
"Block not in tower"
System.out.println(tower);
"block: blue, base: 6cm x 2cm, thicknes: 2 cm
block: yellow, base: 5cm x 4cm, thicknes: 1 cm
block: yellow, base: 5cm x 4cm, thicknes: 1 cm"
比方说,我会把塔为块的集合。如何在整个集合中执行特定块的搜索?或者我应该使用其他接口?
难道这是预期的输出? – OscarRyz 2010-03-17 19:06:10
是的。在“”这是这个示例测试代码的输出。 – owca 2010-03-17 19:49:51