Java 如何识别文本文件中的字符并将其转换为地图中的对象?

Java 如何识别文本文件中的字符并将其转换为地图中的对象?,java,Java,我正在编写一个游戏,关卡地图是文本文件。如何将这些文本文件转换为java中的映射 例如: E是一个移动的物体 是墙吗 c 是盒子吗 x 是目标吗 b 是移动对象的电池我建议您首先使用BufferedReader加载文件,它提供了一个readLine方法,然后使用ToCharray方法将返回的字符串转换为字符数组 之后,您可以在foreach循环中使用开关结构解析每个字符。它会给出这样的结果: for(char charac : data.toCharArray()) { switch(char

我正在编写一个游戏,关卡地图是文本文件。如何将这些文本文件转换为java中的映射

例如:

E是一个移动的物体

是墙吗

c 是盒子吗

x 是目标吗

b
是移动对象的电池

我建议您首先使用BufferedReader加载文件,它提供了一个readLine方法,然后使用ToCharray方法将返回的字符串转换为字符数组

之后,您可以在foreach循环中使用开关结构解析每个字符。它会给出这样的结果:

for(char charac : data.toCharArray()) {
switch(charac) {
     case '#' :
          solidTiles.add(new Wall(posX, posY)); //where solidTiles is an 
                                                //ArrayList of tiles
          break;
     case ' ' :
          //is a blank space, so do nothing (or add a new tile to some list, etc.)
           break;
     case 'E' : 
          entities.add(new MovingEntity(posX, posY)); //etc.
          break;
}
}
希望它能帮助你:

for(char charac : data.toCharArray()) {
switch(charac) {
     case '#' :
          solidTiles.add(new Wall(posX, posY)); //where solidTiles is an 
                                                //ArrayList of tiles
          break;
     case ' ' :
          //is a blank space, so do nothing (or add a new tile to some list, etc.)
           break;
     case 'E' : 
          entities.add(new MovingEntity(posX, posY)); //etc.
          break;
}
}