I've been reading Java for the Dummies and I came across this error :
Exception in thread "main" java.util.InputMismatchException
at java.util.Scanner.throwFor(Unknown Source)
at java.util.Scanner.next(Unknown Source)
at java.util.Scanner.nextDouble(Unknown Source)
at TeamFrame.<init>(TeamFrame.java:18)
at ShowTeamFrame.main(ShowTeamFrame.java:7)
This is the code :
import java.text.DecimalFormat;
public class Player {
private String name;
private double average;
public Player(String name, double average) {
this.name=name;
this.average=average;
}
public String getName() {
return name;
}
public double getAverage() {
return average;
}
public String getAverageString() {
DecimalFormat decFormat = new DecimalFormat();
decFormat.setMaximumIntegerDigits(0);
decFormat.setMaximumFractionDigits(3);
decFormat.setMinimumFractionDigits(3);
return decFormat.format(average);
}
}
import java.util.Scanner;
import java.io.File;
import java.io.IOException;
import javax.swing.JFrame;
import javax.swing.JLabel;
import java.awt.GridLayout;
@SuppressWarnings("serial")
public class TeamFrame extends JFrame {
public TeamFrame() throws IOException {
Player player;
Scanner hankeesData =
new Scanner(new File("d:/eclipse/Workplace/10-02 book/Hankees.txt"));
for (int num = 1; num <= 9; num++) {
player = new Player(hankeesData.nextLine(),
hankeesData.nextDouble());
hankeesData.nextLine();
addPlayerInfo(player);
}
setTitle("The Hankees");
setLayout(new GridLayout(9, 2, 20, 3));
setDefaultCloseOperation(EXIT_ON_CLOSE);
pack();
setVisible(true);
hankeesData.close();
}
void addPlayerInfo(Player player) {
add(new JLabel(" " + player.getName()));
add(new JLabel(player.getAverageString()));
}
}
import java.io.IOException;
class ShowTeamFrame {
public static void main(String args[])
throws IOException {
new TeamFrame();
}
}
This is the .txt file:
Barry Burd
.101
Harriet Ritter
.200
Weelie J. Katz
.030
Harry "The Crazyman" Spoonswagler
.124
Filicia "Fishy" Katz
.075
Mia, Just "Mia"
.111
Jeremy Flooflong Jones
.102
I. M. D'Arthur
.001
Hugh R. DaReader
.212
It is taken right from the book's website so I think that there must be no error.