1

我有一个存储在“僵尸”中的项目列表。时间的系统打印会给我。

[<1.0, 3.0, 2.0>, <2.0, 5.0, 4.0>, <2.0, 4.0, 1.0>, <4.0, 7.0, 3.0>]

我的问题是如何为列表中的每个元素分配一个标签,以便我可以轻松调用它们<age, height, weight>

标记的最终想法是让我可以对“最重”的僵尸进行排序并将结果存储到哈希图中。

 public class zombieCalculator{

    double age;
    double weight;
    double height;  

        public static Map<Position, List<Position>> Random (List<Position> zombie) {

        System.out.println(time);

        }

       public zombieCalculator( double age, double weight, double height)
  {
      this.age= age;
      this.weight= weight;
      this.height = height;

  } 
    }
4

2 回答 2

1

我认为最好的选择是创建一个具有这 3 个参数年龄、身高和脂肪的 Class Zombie。然后,您可以创建一个 Fat-Comparator-Class 来根据 fat-parameter 对僵尸进行排序:

class FatZombieComparator implements Comparator<Zombie>{

     int compare(Zombie z1, Zombie z2){
       return z1.getFat() - z1.getFat();
     }
 }

现在您可以将您的 Zombies 存储在列表中并使用比较器对列表进行排序:

List<Zombie> zombies = new ArrayList<Zombie>();
zombies.add(...);
Collections.sort(zombies, new FatZombieComparator())

您可以为年龄或身高创建新的比较类

于 2013-10-08T08:21:49.933 回答
0

你需要一门僵尸课。

class Zombi{
    double age, height, fat;

    @Override
    public String toString() {
        return "age: " + age + ", height: " + height + ", fat: " + fat;
    }
}

将地图更改为

Map<Position, Zombi> map;
于 2013-10-08T08:17:10.027 回答