Argumente mit verschiedenen Schleifen ausgeben

Diskutiere Argumente mit verschiedenen Schleifen ausgeben im Java Basics - Anfänger-Themen Forum; Hallo Leute, zur Übung möchte ich ein einfaches Java-Programm erstellen, das alle beim Programmaufruf mitgegebenen Argumente auf der...

  1. scratchy1
    scratchy1 Mitglied
    Hallo Leute,
    zur Übung möchte ich
    ein einfaches Java-Programm erstellen, das alle beim Programmaufruf
    mitgegebenen Argumente auf der Standardausgabe jeweils in einer eigenen
    Zeile ausgibt. Dabei will ich alle mir bekannten Schleifenarten benutzen.
    Ich bin gerade soweit:
    Code (Java):

    public class Schleifen {

        public static void main(String[] args) {
            // TODO Auto-generated method stub

            int k = 0;
            int l = 0;
           
            do {
                System.out.println("Argumente" + args[k]);
                k++;
            } while (k < args.length-1);

            while (l < args.length) {
                System.out.println("Argumente" + args[l]);
                l++;
            }
            for (int i = 0; i < args.length; i++) {
                System.out.println("Argumente" + args[i]);

            }
            for (String j : args) {
                System.out.println("Argumente" + j);

            }
        }

    }
     
    Das Problem ist, das ich wieder ArrayIndexOutOfBoundsException in der do -Zeile bekomme.
    Ich weiss, dass ich bei der do-while-Schleife nur bis args.length-1 iterieren muss, weil die Anweisung mindestens schon einmal ausgeführt werden muss.
    Es heisst: Thrown to indicate that an array has been accessed with an illegal index. The index is either negative or greater than or equal to the size of the array.
    Es kann hier nur sein, dass der Index größer, als das array wird, aber ich lasse k<args.length-1.
     
  2. Wenn du jetzt Java lernen möchtest, dann sichere dir hier unseren Java-Videokurs heute zum Sonderpreis (hier klicken!)
  3. mrBrown
    mrBrown Super-Moderator Mitarbeiter
    Du musst auch bei der do-while Schleife bist k < args.length laufen, sonst schneidest du das letze Element ab. k ist jeweils der Index, der abgefragt wird, und args.length-1 ist der letzte Index.

    Für args.length > 0 laufen alle Schleifen Problemlos durch, nur bei einem leeren Array wirft die erste einen Fehler - da du die Bedingung erst nach dem Abfragen prüfen kannst. ;)
     
  4. scratchy1
    scratchy1 Mitglied
    Hallo mrBrown,
    Ach vielen Dank, jetzt seh ichs, wirklich sehr gut. Nun kommt beim Ausführen(run) einfach nichts, was zu erwarten ist, nicht wahr?
    Ich hab nun
    Code (Java):

    public class Schleifen {

        public static void main(String[] args) {
            // TODO Auto-generated method stub

            int k = 0;
            int l = 0;
            if (args.length != 0) {
            do {
                System.out.println("Argumente" + args[k]);
                k++;
            } while (k < args.length);
            }
            while (l < args.length) {
                System.out.println("Argumente" + args[l]);
                l++;
            }
            for (int i = 0; i < args.length; i++) {
                System.out.println("Argumente" + args[i]);

            }
            for (String j : args) {
                System.out.println("Argumente" + j);

            }
        }

    }
     
    Grüße Scratchy
     
  5. mihe7
    mihe7 Bekanntes Mitglied
    Zu erwarten ist, dass Du alle angegebenen Parameter ausgegeben bekommst und das gleich 4-mal (wenn ich mich nicht verzählt habe). Wenn Du keine Parameter angegeben hast, dann ist 4 * nix = gar nix :)
     
    Tobias-nrw gefällt das.
Passende Stellenanzeigen aus deiner Region:





Die Seite wird geladen...

Argumente mit verschiedenen Schleifen ausgeben - Ähnliche Themen

Konstante an main - Argumenten initialisieren
Konstante an main - Argumenten initialisieren im Forum Allgemeine Java-Themen
JavaFX: Wie kann ich einer Scene Argumente übergeben?
JavaFX: Wie kann ich einer Scene Argumente übergeben? im Forum AWT, Swing, JavaFX & SWT
Spring Thymeleaf Argumente
Spring Thymeleaf Argumente im Forum Allgemeines EE
Problem mit optionalen Argumenten - Apache CLI -
Problem mit optionalen Argumenten - Apache CLI - im Forum Java Basics - Anfänger-Themen
IllegalArgumentException
IllegalArgumentException im Forum Allgemeine Java-Themen
Thema: Argumente mit verschiedenen Schleifen ausgeben