Switch von case zu case weiterleiten

Status
Nicht offen für weitere Antworten.

Macki

Mitglied
Hallo zusammen,

ist mir schon beinahe peinlich soetwas zu fragen, aber wie leite ich in einer switch-Anweisung von einem auf den anderen case weiter?

Beispiel in Pseudocode:

Code:
switch(wasweißichwas){
case 1:
     if(blub){
          machmalwas;
     }
     else{
          leite weiter auf case 2;
     }
case 2:
     if(blub){
         machmalwas;
     }
     else{
          leite weiter auf case 3;
     }
case 3: .....

So ungefähr. Nur ich weiß nun leider nicht, wie man direkt in den folgenden case weiterleitet *schäm*

Bitte helft mir!

Liebe Grüße
Macki
 

Illuvatar

Top Contributor
Um auf den nächsten Case weiterzuleiten, musst du gar nichts machen, um das nicht zu tun, verwendest du break.

In Code ausgedrückt:
Code:
switch(wasweißichwas){ 
case 1: 
     if(blub){ 
          machmalwas; 
          break;
     } 
     else{ 
          machwasanderes;
     } 
case 2: 
     if(blub){ 
         machmalwas; 
         break;
     } 
     else{ 
          machwasanderes;
     } 
case 3: .....
 

Macki

Mitglied
Hiho,

nö, ja...

hmm das war mir klar!

Ich meinte dass der Lümmel (Rechner) nur dann auf den nächsten Case weiterleiten soll, wenn die If-Bedingung des ersten Case nicht erfüllt nicht.

Also:

Code:
case 1:
		if(!Simbah.party){
		simbah(weiter, freundlich, neutral, feindlich, einladen);
		break;
		}
	case 2:
		if(!Emlog.party){
		emlog(weiter, freundlich, neutral, feindlich, einladen);
		}
		break;
	case 3:
		if(!Nasalurk.party){
		nasalurk(weiter, freundlich, neutral, feindlich, einladen);
		}
		break;

geht noch lange so weiter...

wenn bei meinem Beispiel das boolean party true ist, soll er auf case zu springen und nur dann!

Oder habe ich dich nun falsch verstanden?

Liebe Grüße
Macki
 

Illuvatar

Top Contributor
Das ist imo genau das was dein Code macht ;) So gibt zum Beispiel dieses Programm:

Code:
import java.util.*;

public class Test {

  public static void main(String[] args) {
     Scanner input = new Scanner (System.in);
     int i = input.nextInt();
     boolean b = input.nextBoolean();
     switch (i){
       case 1: System.out.println ("case 1");
               if (b){
                 System.out.println("end");
                 break;
               }
       case 2: System.out.println ("case 2");
               if (!b){
                 System.out.println("end");
                 break;
               }
       default: System.out.println("default");
     }
  }
}
bei einer Eingabe von 1 und false aus:
case 1
case 2
end
 

L-ectron-X

Gesperrter Benutzer
Es kommt hier auf die Positionierung von break an.
Ist es im Block der if-Anweisung, wird die switch-Anweisung abgebrochen, wenn die Bedingung erfüllt ist.
Ist das break außerhalb des Blocks, wird immer abgebrochen.
 

Wildcard

Top Contributor
switch sollte man wo es nur geht vermeiden, da man leicht Fehler macht, und man sich komplexe switch Anweisungen sehr genau ansehen muss um sie zu verstehen. Ich benutze switch praktisch überhaupt nicht.
OOP Erstatz: visitor-Pattern
 

Macki

Mitglied
Vielen lieben Dank!

Ihr hattet Recht!!!! Das funzt so! Mein Fehler lag ganz wo anders *rotwerd* Ich hatte die Variable der Bedingung zu Beginn auf den falschen Wert gesetzt. Auf diese Weise ist der immer die komplette Schleife durchlaufen, ohne mir die gewünschten Aktionen zu bringen.

Nuja, nu passt es.

Liebe Gruß
Macki
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
G switch case VS. if.else if Allgemeine Java-Themen 2
W Switch Anweisung Allgemeine Java-Themen 4
MiMa Switch Anweisung Allgemeine Java-Themen 10
C Switch mit String Allgemeine Java-Themen 19
F Switch Prefix Suffix Allgemeine Java-Themen 9
K Enum mit switch Allgemeine Java-Themen 2
K Eclipse Alternativkonstrukte (Verzweigungen: if, switch,else..) Allgemeine Java-Themen 4
I switch aus der realen Welt Allgemeine Java-Themen 17
Q Variable aus Schleife/Switch benutzen Allgemeine Java-Themen 7
N switch Statement Allgemeine Java-Themen 4
M Verständnis enum - switch Allgemeine Java-Themen 2
R Java enum switch Allgemeine Java-Themen 11
Escorter Switch in der Schleife! Allgemeine Java-Themen 4
F Frage zu switch und enums Allgemeine Java-Themen 5
P switch/actionPerformed Allgemeine Java-Themen 7
E if oder switch Allgemeine Java-Themen 27
Ameise03 Best&Worst Case bei Insertionsort Allgemeine Java-Themen 10
T regex case insensitive trimmed Allgemeine Java-Themen 6
ReinerCoder Case statt if else Abfragen?! Allgemeine Java-Themen 8
C Regex (Case insensitive und Umlaute) Allgemeine Java-Themen 4
B RowFilter Case Insensitive Problem Allgemeine Java-Themen 3
L String -> Case insensitiv replacement Allgemeine Java-Themen 5
1 String mit contains vergleichen (ignore case) Allgemeine Java-Themen 2
DStrohma [Erledigt] Regex CASE INSENSITIVE Allgemeine Java-Themen 7
K Sortierung, Collator und Case Allgemeine Java-Themen 5
V Case-sensitiv nur in Jar? Allgemeine Java-Themen 8
MQue Use case Allgemeine Java-Themen 8
E CASE Tools Allgemeine Java-Themen 15
F case Allgemeine Java-Themen 3
0 case orphaned Fehlermeldung! Allgemeine Java-Themen 2

Ähnliche Java Themen

Neue Themen


Oben