Ganz einfaches Logikproblem mit Switchanweisungen

Tizian

Grünschnabel
Hallo alle! :)

Ich bin in Java recht neu und habe ein vermutlich dermaßen einfaches Problem,
dass es für jeden auch nur halbwegs erfahrenen Programmierer lächerlich wirken
mag. Dennoch bring ichs irgendwie nicht hin (leider)...

Kann mir jemand mal diesen 7-Zeiler in eine möglichst kurze äquivalente Switch-Anweisung
umwandeln? (ich bau da nämlich leider nur Müll und finde keine Beispiele
die zeigen würden wie man geschachtelte if-Anweisungen per Switch realisiert)

Hier das Beispiel das ich gerne in eine Switch Anweisung umwandeln würde:

if (x==1 || x==5) method1(x);
else if (x==2 || x==3 || x==4 || x==6) method2(x);
else if (x==7 || x==8) {
if (x==7) method3(x);
method4(x);
}
else method5(x);

Aller besten Dank wenn das jemand kurz exemplarisch als äquivalente Switch-Anweisung
darstellen könnte! Würde mich sehr helfen. THX a lot!

Lg,

Tizian
 
Hallo!

Schau mal hier:
Code:
package de.tutorials;

public class SwitchTest {

	public static void main(String[] args) {

		for (int x = 1; x < 10; x++) {

			if (x == 1 || x == 5)
				method1(x);
			else if (x == 2 || x == 3 || x == 4 || x == 6)
				method2(x);
			else if (x == 7 || x == 8) {
				if (x == 7)
					method3(x);
				method4(x);
			} else
				method5(x);

			switch (x) {

			case 2:
			case 3:
			case 4:
			case 6:
				method2(x);
				break;

			case 1:
			case 5:
				method1(x);
				break;
			case 7:
				method3(x);
				method4(x);
				break;
			case 8:
				method4(x);
				break;
			default:
				method5(x);

			}
			System.out.println("-----");
		}

	}

	public static void method1(int x) {
		System.out.println("Method1: " + x);
	}

	public static void method2(int x) {
		System.out.println("Method2: " + x);
	}

	public static void method3(int x) {
		System.out.println("Method3: " + x);
	}

	public static void method4(int x) {
		System.out.println("Method4: " + x);
	}

	public static void method5(int x) {
		System.out.println("Method5: " + x);
	}
}

Gruß Tom
 
Code:
switch x
{
	case 1:
		method1(x);
		break;
	case 2:
		method2(x);
		break;
	case 3:
		method2(x);
		break;
	case 4:
		method2(x);
		break;
	case 5:
		method1(x);
		break;
	case 6:
		method2(x);
		break;
	case 7:
		method3(x);
		method4(x);
		break;
	case 8:
		method4(x);
		break;
	default:
		method5(x);
		break;
}
 
Zurück