Вот мой основной класс:Почему «java.lang.IndexOutOfBoundsException» выбрасывается при доступе к заполненному arraylist?
package main;
public class Main_Class {
public static void main(String[] args) {
Game_Map_Handler GMH = new Game_Map_Handler();
GMH.AddData("adad");
System.out.println(GMH.RetrieveData());
}
}
Вот еще один класс у меня есть (Game_Map_Handler):
package main;
import java.util.*;
public class Game_Map_Handler {
public List<String> Map_Data = new ArrayList<String>();
public void AddData(String InData) {
List<String> Map_Data = new ArrayList<String>();
Map_Data.add(InData);
}
public String RetrieveData() {
String To_Return = Map_Data.get(0);
return To_Return;
}
Это ошибка:
Exception in thread "main" java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
at java.util.ArrayList.rangeCheck(Unknown Source)
at java.util.ArrayList.get(Unknown Source)
at main.Game_Map_Handler.RetrieveData(Game_Map_Handler.java:13)
at main.Main_Class.main(Main_Class.java:7)
Почему эта ошибка возникает? Кажется, что в «Map_Data» ничего не заполнено, однако Я сделал.
+1, тень - это точный термин. –