Probleme mit Java - If Schleife

Diskutiere Probleme mit Java - If Schleife im Webmaster Hilfe / Programmierer Forum Forum im Bereich Computerprobleme; Hallo Leute, bin gerade dabei Java zu lernen und dabei sollten wir ein Programm schreiben, was die Konvertierung primitiver Datentypen...

  1. #1 BooWseR, 31.10.2013
    BooWseR

    BooWseR Erfahrener Benutzer

    Dabei seit:
    08.11.2011
    Beiträge:
    834
    Zustimmungen:
    11
    Ort:
    Deutschland
    Hallo Leute,

    bin gerade dabei Java zu lernen und dabei sollten wir ein Programm schreiben, was die Konvertierung primitiver Datentypen erläutert.
    Da ich diese sinnlose Schreibarbeit aber nicht als sonderlich sinnvoll erachte, wollte ich mein Programm ein wenig "aufpeppen".

    Mein Ziel ist es, dass man eine Zahl eingibt und das Programm einem sagt in welchen Wertebereich diese Zahl fallen kann.

    Das mit dem Eingeben funktioniert ganz gut, doch danach hört es leider auf:

    Im Moment fahre ich noch mit:

    If ( x >= -128 && x <= 127 )
    System.out.println("Byte");

    usw.

    Nun habe ich das nächste If mit dem Wertebereich von Short. Gebe ich nun 1000 ein kommt aber nicht System.out.println("Short"), sondern er springt direkt zum else. Auch Else if und { } nach jeder Anweisung brachten keinen Erfolg.

    Nun bin ich über switch case gestolpert, welches jedoch nicht in der Lage ist mit double zu arbeiten, sondern nur mit String und int.

    Fällt euch eine andere Methode abseits der If oder Switch Schleife ein mein Problem zu bewältigen?

    Außerdem sehe ich mich gleich vor noch einem Problem. Sollte nun alles klappen, so muss ich ihm noch zu verstehen geben, dass er bspw. für Byte nur den Wertebereich der Ganzzahlen nehmen soll.

    Wäre super wenn da jemand eine Idee für mich hätte.

    Lieben Gruß,
    BooWseR
     
  2. Anzeige

    schau dir mal diesen Ratgeber an. Dort findet man viele Hilfestellungen.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren.
  3. Lotus

    Lotus Erfahrener Benutzer

    Dabei seit:
    17.02.2007
    Beiträge:
    2.428
    Zustimmungen:
    0
    Poste mal bitte den ganzen Code.
    Das sollte mit if-else prima funktionieren.

    if (x >= ... && x<= ...)
    { ... }
    else if (x >= ... && x <= ...)
    {...}
    else {...}

    Wenn x von der Variable double ist, solltest du glaube ich 128.0 nutzen, bei arithmetischen Operationen ist das notwendig, bei if-else Anweisungen bin ich mir nicht sicher.

    Bei Überprüfung auf Ganzzahlen kannst du einfach mit Modulo auf einen Rest prüfen.
     
  4. #3 xandros, 01.11.2013
    xandros

    xandros IT Consultant, Cisco Registered Partner
    Moderator

    Dabei seit:
    05.07.2007
    Beiträge:
    26.333
    Zustimmungen:
    131
    Ort:
    Umkreis Duisburg, neben Mannheim, hinter Hamburg
    die wohl einfachste Art herauszufinden, ob eine Zahl eine Ganzzahl ist:
    Caste den Wert nach Int, ziehe den so ermittelten Wert von der Ausgangszahl ab. Ist das Ergebnis 0, dann hast du eine Ganzzahl.
    Code:
    if( (d - (int)d) == 0)
      .....
     
  5. #4 BooWseR, 01.11.2013
    Zuletzt bearbeitet: 04.11.2013
    BooWseR

    BooWseR Erfahrener Benutzer

    Dabei seit:
    08.11.2011
    Beiträge:
    834
    Zustimmungen:
    11
    Ort:
    Deutschland
    OK, das mit int gefällt mir vom Prinzip, müsste es dann aber mit long machen, da es sonst zu einem Fahler kommen könnte.

    Bevor ich bei short den Wert von -128 - 127 ausgeklammert hatte ging es vom Prinzip, nur wenn ich dann 1 eingegeben hatte zeigte er beide If Möglichkeiten an, darum jetzt so umständlich formuliert. Versteh sowieso nicht, warum er die nächsten If noch prüft, wenn das erste schon zutreffend ist... :confused:

    Und wieder ein schöner Fehler des menschlichen Versagens. Hab den Wertebereich einfach reinkopiert und vergessen, dass er die 32.767 nicht als 32767 nimmt, sondern als 32,767.

    Ok, nun funktioniert es. Mal schauen wie lange noch...

    Achso, kann ich, statt den Wertebereich von Hand einzugeben mit MAX_VALUE arbeiten? Falls ja, kann jemand mein ein If Argument mit Beispielsyntax bringen?
     
  6. Anzeige

    Hi,
    schau mal hier: Windows-Wartungs-Tool. Viele Probleme lassen sich damit einfach beheben. Oftmals ist der PC dann auch schneller!
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren.
Thema:

Probleme mit Java - If Schleife

Die Seite wird geladen...

Probleme mit Java - If Schleife - Ähnliche Themen

  1. Probleme HTML: background-color für "body" funktioniert nicht

    Probleme HTML: background-color für "body" funktioniert nicht: Hallo, ich schreibe gerade eine Website mit css, und ich möchte den Hintergrund der Seite ändern, jedoch geht das nicht. Könnt Ihr mal den Code...
  2. Amazone Prime Probleme

    Amazone Prime Probleme: Hallo leute, mal ne Frage. Hat jemand Erfahrung mit Amazone Prime App Streaming auf Smart TV. Habe ne VDSL 50000 Leitung und egal ob mit LAN...
  3. Probleme mit Energieoptionen beim PC

    Probleme mit Energieoptionen beim PC: Mein Computer schaltet sich nach dem runterfahren nicht aus. wie kann ich das ändern
  4. PUBG Probleme!

    PUBG Probleme!: Siehe Signatur. Das Spiel stockt und baut nur verzögert Grafikbausteine auf. Liegt es an meiner Hardware? An den Einstellungen? Vielen Dank im...
  5. Probleme nur in einem von vielen WLANs

    Probleme nur in einem von vielen WLANs: Hello, finde leider keinen Ansatzpunkt für mein Problem. Mit meinem Laptop (Win 7, alle Updates, nie Probleme, Windows vor einer Woche frisch...