tutorials.de Buch-Aktion 05/2012
Like Tree1Danke
  • 1 Beitrag von Matthias Reitinger
ERLEDIGT
JA
ANTWORTEN
2
ZUGRIFFE
838
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    BrainLight BrainLight ist offline Mitglied Bronze
    Registriert seit
    Apr 2004
    Ort
    Leipzig
    Beiträge
    29
    Hallo liebe Gemeinde.

    Der Ternary Operator in Java stellt in vielen Meinungen ein "vereinfachtes" if-then-else-Konstrukt dar. Ich finde Ihn allerdings eher verwirrend als einfach

    Dieses Beispiel ist ja wirklich relativ einfach:
    Code java:
    1
    2
    3
    4
    5
    6
    
    int value1 = 1;
    int value2 = 2;
    int result;
    boolean someCondition = true;
    result = someCondition ? value1 : value2;
    System.out.println(result);

    Aber wie lässt sich der folgende Code als if-then-else lesen?
    Was machen diese Pipes dort drin - logisches OR oder was soll das sein?
    Alle Variablen sind vom Datentyp int innerhalb einer For-Schleife mit der Zählvariable i

    Code java:
    1
    2
    3
    
    int count = 0;
    count = i == 0 ? count | START: count;
    count = (i + 1) * SIZE > array.length ? count | END : count;

    Ich würde mich freuen, wenn mir jemand diese Logik "enteinfacht"

    MfG
    BL
    Geändert von BrainLight (24.03.11 um 17:47 Uhr)
     
    Wenns zum Weinen nicht reicht, dann lache einfach!

  2. #2
    Registriert seit
    Dec 2001
    Ort
    Bayern
    Beiträge
    5.806
    Blog-Einträge
    5
    Hallo,

    das | steht für eine binäre ODER-Verknüpfung. Umgeschrieben auf if:

    Code java:
    1
    2
    3
    4
    5
    6
    7
    
    int count = 0;
    if (i == 0) {
      count = count | START;
    }
    if ((i + 1) * SIZE > array.length) {
      count = count | END;
    }
    Die else-Zweige hab ich weggelassen, da diese sowieso keine Auswirkung hätten (count = count;). Ein schönes Beispiel, wie man den ternären Operator missbrauchen kann…

    Grüße,
    Matthias
    BrainLight bedankt sich. 
    „Gib einem Menschen einen Fisch, und er wird für einen Tag satt. Lehre ihn Fischen, und er wird ein Leben lang satt.“
    “For every complex problem, there is an answer that is short, simple and wrong.”
    “Pessimism is safe, but optimism is a lot faster!”


    Aktuelles Coding Quiz: #17 - Wörter kreuz und quer

  3. #3
    BrainLight BrainLight ist offline Mitglied Bronze
    Registriert seit
    Apr 2004
    Ort
    Leipzig
    Beiträge
    29
    So macht das Sinn - Herzlichen Dank
     
    Wenns zum Weinen nicht reicht, dann lache einfach!

Ähnliche Themen

  1. Conditional Comments
    Von Chucky-dAwN im Forum CSS
    Antworten: 4
    Letzter Beitrag: 26.04.10, 09:04
  2. Conditional Comments & JS Event Handler
    Von parawaiter im Forum Javascript & Ajax
    Antworten: 6
    Letzter Beitrag: 09.09.07, 14:06
  3. IE Conditional Comments und CSS
    Von Hagi im Forum CSS
    Antworten: 6
    Letzter Beitrag: 08.08.05, 19:37
  4. Conditional Comments
    Von messmar im Forum HTML & XHTML
    Antworten: 4
    Letzter Beitrag: 23.06.05, 13:00
  5. Conditional Comments für Netscape?
    Von MirkoB im Forum HTML & XHTML
    Antworten: 0
    Letzter Beitrag: 11.05.04, 15:24