0

How to get object reference(link) from object array(levelArray)? F.e., levelArray has created object "Level1" under index 1, and I need to change variables in that object. How to do it?

public class LevelEditorScreen implements Screen {

    final Drop game;
    private Batch batch;
    private Array<Level> levelArray;
    private int levelCount;

    private void createLevel(int lvlCount) {
        levelCount += 1;
        lvlCount = levelCount;
        levelArray.add(new Level());

    }
}
Sam Dufel
  • 17,560
  • 3
  • 48
  • 51
hypeofpipe
  • 503
  • 4
  • 16
  • levelArray[0].setLevelIndex(1); levelArray[0] will return Level object. You can acces its properties via getters setters.thanks – Sanka Sep 07 '16 at 16:15
  • read this one to get idea http://stackoverflow.com/questions/12757841/are-arrays-passed-by-value-or-passed-by-reference-in-java – Sanka Sep 07 '16 at 16:29

1 Answers1

1

If you know the index you can use get(int index) method.

levelArray.get(0); //This will return object of index 0

If you don't know the index, but you know that some variable is set to specific value you can do this to get desired object:

In this example Level has variable String name

for(Level level : levelArray) {
    if(level.name.equals("Awesome level")) {
        //We found desired level!
    }
} 
pr0gramist
  • 8,305
  • 2
  • 36
  • 48