fehlerabfrage

Status
Nicht offen für weitere Antworten.

goschy

Mitglied
hallo

habe ein problem mit ner fehlerabfrage (args[1]); darf keine buchstabe enthalten.
soll mit:

try{
....}
catch (NumberFormatExeption e){...}

nur wo muesste ich das in meinem fall einbauen ???

Code:
import java.lang.*;
import java.io.*;


class regallager{

String z_name;
String n_name;
regallager (String s1, String s2)
{
  z_name = s1;
  n_name = s2;
}


void printregallager()
{
  if ( !z_name.equals("k") && !z_name.equals("m") && !z_name.equals("p") && !z_name.equals("v"))
  {
    System.out.println ("Falsche Typenbezeichnung!");
    System.out.println ("Allen Zeichen muessen klein geschrieben sein! z.b. (p, v, m, k,)");
   }

  if (n_name.length() !=11)
  {
     System.out.println ("Ersatzteilnummer nicht vollstaendig oder zu lang!");
  }

  else
  {
    System.out.println ("die Ersatrzeilbezeichnung lautet " +z_name +" "+n_name);

    if (z_name.equals("k"))System.out.println ("Es handelt such um ein Kleinteil");

    if (z_name.equals("m"))System.out.println ("Es handelt sich um eine Messeinrichtung");

    if (z_name.equals("v"))System.out.println ("Es handelt sich um ein Ventil");

    if (z_name.equals("p"))System.out.println ("Es handelt sich um eine Pumpe");

    System.out.println("Ihre gesuchtes Ersatzteil finden Sie:");
    System.out.println("Die Ersatzteilnummer lautet: " + n_name.substring(0,3));
    System.out.println("In Regalreihe " + n_name.substring(3,5));
    System.out.println("Im Regal " + n_name.substring(5,7));
    System.out.println("In Regalebene " + n_name.substring(7,9));
    System.out.println("Im Regalfach " + n_name.substring(9,11));
  }
}


public static void main (String args[]){

  regallager y = new regallager (args[0], args[1]);
  y.printregallager();
}
}


hier ein beispiel das funktionieren sollte

Code:
class Fehler {
public static void mein (string[] args){
int k,l,m;
try{
k = Interger.parseInt (args[0]);
m = Interger.parseInt (args[1]);
m = k/l;
System.out.println(m);}
catch(NumberFormatExeption){
System.out.println ("nein nein");}}}


danke fuer eure hilfe
 

Leroy42

Top Contributor
Wo ist das Problem? :shock:

Im main deiner Beispielklasse Fehler hast du das doch schon richtig gemacht.

Bau das doch einfach in das main der Klasse regallager ein.

Es ist besser, du gewöhnst dir schon frühzeitig an, alle Klassennamen
groß zu schreiben.
 

Leroy42

Top Contributor
Etwa so:
Code:
public static void main (String args[]) {
  try {
    Integer.parseInt(args[0]);
    Integer.parseInt(args[1]);
    regallager y = new regallager (args[0], args[1]);
    y.printregallager();
  } catch (NumberFormatException e) {
    System.err.println("Einer der Argumente repräsentiert keine Ganzzahl");
  } catch (ArrayIndexOutOfBoundsException e) {
    System.err.println("Zuwenig Argumente");
  }
}
}
 

goschy

Mitglied
aha also musste ich in zeile 52 und 54 reinschtrieben

aber so klappt es wie ich es haben wollt

dann bedanke ich mich mal fuer dein gute mithilfe :D
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen

Ähnliche Java Themen

Neue Themen


Oben