我的txt文件如下所示:-
类型:战士
健康:100
级别:1
经验:0
最大生命值:100
药剂-小:2
- Medium : 1
- Large : 0
我想用“:”字符后面的数字创建对象(英雄=新战士(生命值,等级,经验值,最大健康值,库存)我的代码根本不起作用。这是我的密码。当我打印arraylist时,它会打印出我需要的所有元素。但除了它不做任何事情,也没有显示任何错误消息。(谢谢)
private void loadHero() throws IOException {
try {
File file = new File("hero.txt");
BufferedReader reader = new BufferedReader(new FileReader(file));
ArrayList<String> listOfVariables = new ArrayList<>();
String line;
int count = 0;
while((line= reader.readLine())!=null){
String[] val = line.split(":");
String members = val[1];
listOfVariables.add(members);
count+=1;
}
String name = listOfVariables.get(0);
int health = Integer.parseInt(listOfVariables.get(1));
int level= Integer.parseInt(listOfVariables.get(2)) ;
int experience= Integer.parseInt(listOfVariables.get(3));
int maxHealth= Integer.parseInt(listOfVariables.get(4));
int smallPotions= Integer.parseInt(listOfVariables.get(5));
int mediumPotions= Integer.parseInt(listOfVariables.get(6));
int largePotions= Integer.parseInt(listOfVariables.get(7));
Inventory inventory = new Inventory(smallPotions, mediumPotions, largePotions);
hero = new Warrior(health, level, experience, maxHealth, inventory);
}catch(Exception ex){
ex.printStackTrace();
}
}
1条答案
按热度按时间ejk8hzay1#
您的代码工作正常,但您需要添加print语句,否则创建的对象在成功创建后将永远不会显示。
方法:
覆盖
toString()
在您的模型类和选择一个很好的布局显示数据。在创建对象后添加print语句(例子
System.ou.println()
).我希望我能帮助你,继续你的伟大工作!