中以前的行的值有一个很快的问题。java从文件中读取。最后一行覆盖列表
我有一个文件名1.txt
Coupe 1 2
Coupe 3 4
和我有一个代码
br = new BufferedReader(new FileReader("1.txt"));
String tmp = "";
while ((tmp = br.readLine()) != null) {
String[] s = tmp.split("\\s");
comfortName = s[0];
tickets = Integer.parseInt(br.readLine());
baggage = Integer.parseInt(br.readLine());
// next code send to constructor of class from value of comfort name a parametrs.
Class[] e = new Class[]{Integer.TYPE,Integer.TYPE};
comfortName = "second.objects.carriages.type." + comfortName;
Class carriageClass = Class.forName(comfortName); Constructor constructor = carriageClass.getDeclaredConstructor(e);
passenger = (Passenger) constructor.newInstance((tickets),(baggage));
// the next line add to list a value from constructor
carriage.addPassenger(passenger);
添加客运代码:
public boolean addPassenger(Passenger passenger) {
totalPassenger +=Passenger.getTickets();
totalBaggage+=Passenger.getBaggage();
return Carriage.getPassengerList() .add(passenger);
}
所以结果时,我把它列出有这样的事情:
Coupe 3 4
Coupe 3 4
但是从调试器中我发现数值读取不错。但总是最后一行 覆盖列表中前面几行的值。 因此,当我只发送一个排它的工作
int tickets = Integer.parseInt(br.readLine()); \t \t int baggage = Integer.parseInt(br.readLine());应该抛出一个NumberFormatException – Shek
是的,我做了一个尝试捕获,但对于这个问题,以最小的代码,我已经删除它 –
java.lang.Class.newInstance()创建由此Class对象表示的类的新实例。该类被实例化,就像通过一个带有空参数列表的新表达式一样。如果该类尚未初始化,则该类将被初始化。 – Shek