Java If-Else if

Erste Frage Aufrufe: 467     Aktiv: 22.02.2021 um 20:43

1

Hallo alle zusammen, ich habe eine Frage zu meiner folgenden Programmierung: wieso wird meine else if und else Bedingung nicht akzeptiert? Ich habe das bei jedem Programm, auch wenn ich es aus Vorlesungen abtippe. Aber wieso und woran liegt es hier? Vielen Dank für eure Hilfe:)

import javax.swing.*; import java.util.Scanner;

public class telefonnummer { public static void main(String[] args) { System.out.println("Hallo, gib hier deine Telefonnummer ein:"); Scanner input = new Scanner(System.in); long Telefonnummer; Telefonnummer = input.nextInt();

    if (Telefonnummer < 10000) ;{
        long digit1 = ((Telefonnummer / 1000) % 10); //erste Stelle
        long digit2 = ((Telefonnummer / 100) % 10); // 2.te Stelle
        long digit3 = ((Telefonnummer / 10) % 10);//3.Stelle
        long digit4 = ((Telefonnummer / 1) % 10); // 4. Stelle
        System.out.println(digit1);
    } else if (Telefonnummer >= 10000); {
        long digit10 = ((Telefonnummer / 10000) % 10); //erste Stelle
        long digit20 = ((Telefonnummer / 1000) % 10); // 2.te Stelle
        long digit30 = ((Telefonnummer / 100) % 10);//3.Stelle
        long digit40 = ((Telefonnummer / 10) % 10); // 4. Stelle
        long digit50 = ((Telefonnummer % 10)); // 5. stelle
        System.out.println(digit10);
        } else System.out.println("Keine Nummer");


    }

}
Diese Frage melden
gefragt

 
Kommentar schreiben
1 Antwort
1

Hallo programmiermaus, bin kein JAVA Spezialist aber ich vermute mal, dass die Semikolons nach deiner if und else if Anweisung das kaputt machen. In C wäre das so. Durch das Semikolon wird in C eine leerer Block erzeugt und damit ist der if dann schon erledigt. Die Anweisungen des nächsten Blocks sind dann ganz "normale" Anweisungen die immer ausgeführt werden. Lass die Semikolons einfach mal weg. Wenn ich falsch liege darf mich ein JAVA Spezialist gerne korrigieren.

Also: if (Telefonnummer < 10000) {

Gruß jobe

Diese Antwort melden
geantwortet

Sonstiger Berufsstatus, Punkte: 395

 

Vielen Dank! daran hats gelegen, immer diese kleinen Fehler :/. Kurze Frage, wenn ich beispielsweise ein Text oder lediglich einen Buchstabe eingebe, soll die Fehlermeldung "Keine Nummer" ausgegeben werden (letzte Zeile von meinem Code). Wie macht man den Vergleich, dass das dann kein long ist, sondern string? :))

  ─   programmiermaus 22.02.2021 um 20:00

Wenn du meinst, wie man ein Long in ein String umwandeln kann: String s = String.valueOf(a); wobei a eine Variable vom Typ long ist.

  ─   daniel.kuenkel 22.02.2021 um 20:43

Kommentar schreiben