Veröffentlicht 9. Dezember 200321 j Ich muss ne Abfrage durchführen die einen Wert auf bestimmte Zahlen überprüfen soll: wenn Wert 1,7,20,50 mach das wenn Wert 2,3,6,90 tu jenes wie kann ich dies in ne switch-case Anweisung umsetzen? hab es schon mit case 1||7||20 probiert aber diese funktionierte nicht. Jemand ne Idee?
10. Dezember 200321 j Servus, das liegt daran, das case als Parameter nur einen primitiven Wert bekommen kann (Ganzzahl und byte / char). So wie Du das willst, sieht es eher nach einer if-else-Abfrage aus: if(i == 1 || i == 7 || i == 20) { } else if(i == 2 || i == 3 || i == 21) { } [/PHP] Sollte das Ganze aber grösser und flexiber sein, dann würde ich eher für jeden Fall ein einem Array (boolean) oder einer Collection die Werte ablegen und schauen, ob es den zu prüfenden Wert in diesem Datencontainer gibt. Oder es gibt noch eine bessere Lösung, aber dazu brauche ich ein bisschen Info, was Du überhaupt machen willst. Peter
10. Dezember 200321 j Hi, du kannst das auch so machen: switch (wert) { case 1: case 7: case 20: case 50: //Tu das was getan werden muss break; case 2: case 3: case 6: case 90: //und hier das andere tun break;
10. Dezember 200321 j Es geht eben nur darum festzustellen ob ein Wert in eine bestimmte Reihe passt. Ich wollte das nur mal so zum testen des switch-case-Befehls verwenden, hat also keine tiefere Bedeutung!
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.