Ok Also mein Programm ist es, eine URL vom Benutzer zu einer Datenbank zu erhalten und diese Datenbasis zu verarbeiten, indem man den Durchschnitt berechnet und diesen anzeigt. Mein Algorithmus dafür funktioniert tadellos das Problem, das ich habe, ist mit der Behandlung der URL Ausnahme. Wenn ein Benutzer eine ungültige URL eingibt, möchte ich, dass er es erneut versucht und eine korrekte URL eingibt, aber wenn die Benutzer die URL erneut eingeben, werden keine Daten von der URL verarbeitet und ich bekomme "NaN" in der Ausgabe. Unten ist der Versuch, Blöcke zu fangen, da ich glaube, dass das Problem dort liegt, bitte helfen Sie, wenn Sie können.Try-Catch Block nicht die Ausnahme behandeln die Art, wie ich dazu tendiere
// Test-URL // URL-Gehalt = neue URL ("http://cs.armstrong.edu/liang/data/Salary.txt");
System.out.println("Enter The URL to the File ");
Scanner UserInput = new Scanner(System.in);
try
{
//Ask The User to Input the URL
URL salary = new URL(UserInput.nextLine());
Scanner Read = new Scanner(salary.openStream());
while(Read.hasNextLine())
{
for(int i = 0; i < Faculty.length; i++)
{
String Firstname = Read.next();
String Lastname = Read.next();
String rank = Read.next();
double Salary = Read.nextDouble();
if(rank.matches("assistant"))
{
Faculty[i] = new AssistantProfessor(Firstname, Lastname, rank, Salary);
allAssistantProff[i] = new AssistantProfessor(Firstname, Lastname, rank, Salary);
AssistantProfessors++;
}
if(rank.matches("associate"))
{
Faculty[i] = new AssociateProfessor(Firstname, Lastname, rank ,Salary);
allAssociateProff[i] = new AssociateProfessor(Firstname, Lastname, rank ,Salary);
AssociateProfessors++;
}
if(rank.matches("full"))
{
Faculty[i] = new FullProfessor(Firstname, Lastname, rank, Salary);
allFullProff[i] = new FullProfessor(Firstname, Lastname, rank, Salary);
FullProfessors++;
}
//System.out.println(Faculty[i]);
//System.out.println(allAssistantProff[i]);
//System.out.println(allAssociateProff[i]);
//System.out.println(allFullProff[i]);
}
}
}
catch(MalformedURLException ex)
{
System.out.println("invalid URL" + " Try Again ");
URL salary = new URL(UserInput.nextLine());
}
Also, erhalten Sie irgendeine Ausnahme? Ich meine, reicht die Kontrolle, um Block zu fangen? – tesnik03
Dies ist kein Debugging-Service. Verwenden Sie einen Debugger selbst. – Raedwald