2015-04-01 6 views
0

У меня есть класс Location, который хранит несколько объектов местоположения, анализируется из файла JSON. На данный момент я могу распечатать все местоположений в списке с помощью метода toString(). Результат выглядит следующим образом:Как напечатать конкретный объект по идентификатору поля в списке объектов массива?

http://hastebin.com/eruxateduz.vhdl

Это пример одного из loctions в списке:

Location [location=null, id=3, description=You are at battlefield of Jerusalem. You are in awe of your surroundings, you see an exit to the west., weight=100, name=Jerusalem, exit=[Exit [title=Hattin, direction=West]]], 

Но я задаюсь вопросом, как я могу напечатать определенное место в том, что список по идентификатору значения поля, например, loction с id = "2"?

Я имею в виду метод коррекции ToString может быть создан, чтобы принять ввод идентификатора и распечатать соответствующий объект местоположения, но не знаете, как напечатать на «ид»:

if(LocationObject.getId() == "2") { 
     //do something 
} 

Это POJO класс Места, где хранятся объекты:

public class Location { 

    private Location[] location; 

    private int id; 

    private String description; 

    private String weight; 

    private String name; 

    private Exit[] exit; 

    private boolean visited = false; 
    private boolean goalLocation; 
    private int approximateDistanceFromGoal = 0; 
    private Location parent; 




    public Location[] getLocation() { 
     return location; 
    } 

    public void setLocation(Location[] location) { 
     this.location = location; 
    } 


    public int getId() { 
     return id; 
    } 

    public void setId(int id) { 
     this.id = id; 
    } 

    public String getDescription() 
    { 
     return description; 
    } 

    public void setDescription (String description) 
    { 
     this.description = description; 
    } 


    public String getWeight() { 
     return weight; 
    } 

    public void setWeight(String weight) { 
     this.weight = weight; 
    } 

    public String getName() 
    { 
     return name; 
    } 

    public void setName (String name) 
    { 
     this.name = name; 
    } 

    public Exit[] getExit() { 
     return exit; 
    } 

    public void setExit(Exit[] exit) { 
     this.exit = exit; 
    } 

    @Override 
    public String toString() { 
     return "Location [location=" + Arrays.toString(location) + ", id=" + id 
       + ", description=" + description + ", weight=" + weight 
       + ", name=" + name + ", exit=" + Arrays.toString(exit) 
       +"]"; 
    } 



} 

ответ

1

попробуйте проверить идентификаторы

if(LocationObject.getId() == "2") { 
     System.out.println(LocationObject.getDescription()); 
} 
+0

Хорошо, тогда как я могу напечатать е lement с идентификатором «2»? –

+0

проверить измененный ответ –