在Java中存储多个变量的好方法?

tes*_*est 0 java

假设我有这些怪物(已经配置了他们的名字,攻击,等级,exp等)但是什么是跟踪他们的X和Y的好方法?

也许是ArrayList<>?喜欢添加那个arraylist 1|12|8|3,其中1是Monster的ID(以后用作m 1.gif,12是X,8是Y,3是地图编号.

您认为在Java中将怪物存储在地图中的好方法是什么?

Set*_*nig 6

那么你当然不希望通过在面向对象语言中使用对象来利用Encapsulation.

class Monster 
{
  private String myName;
  private int attack;
  private int level;
  private int experience;
  public Monster(String n, int att, int lvl, int e)
  {
      myName = n;
      attack = att;
      level = lvl;
      experience = e;
  }

  // other useful methods go here!
}
Run Code Online (Sandbox Code Playgroud)


aby*_*byx 5

你描述的只是存储几个ints,是一种叫做" 原始的痴迷 " 的代码气味.

通常更好的解决方案是提出一个意味着你想要它的意思的对象.例如,您可以拥有Map键是怪物的位置,值是MapPoints(X,Y和地图ID).

通常,您应该开始考虑对象并命名要使用的这些概念.

祝好运!