Java is returning string values when reading off a text file, but it will only return "0" for my integer values and "0.0" for my doubles.
Cars car[] = new Cars[5];
int cnt = 0;
String line = inF.readLine();
while(line != null){
String[] field = line.split("\\s+");
int yrData = Integer.parseInt(field[2]);
double disData = Double.parseDouble(field[3]);
car[cnt] = new Cars(field[0], field[1], yrData, disData);
cnt++;
line = inF.readLine();
}
for(int i=0; i<cnt; i++){
System.out.println(i+1 +": "+ car[i]);
}
Example: What Java Returns---> 1: Name: Opel Model: Astra Year: 0 Disp: 0.0
What is in the text file:Opel Astra 1997 2.8
This is my constructor:
Cars(String dataForName, String dataForModel, int dataForYear, double dataForDisp){name = dataForName; model = dataForModel; int year = dataForYear; double disp = dataForDisp;}
This is my toString method:
public String toString(){String s = "Name: "+name+" Model: "+model+" Year: "+year+" Disp: "+disp; return s;}
The delimiter of the text is space(s).
toStringmethod as well.