Methoden Befehle in zufälliger Reihenfolge ausführen lassen

RowdyN

Mitglied
Hallo Leute und allen ein Frohes Fest,
wie bereits erwähnt würde ich gerne mehrere Befehle in Folge in zufälliger Reihenfolge ausführen lassen. Habe es bereit häufiger probiert und das beste was dabei herrausgekommen ist schaut so aus :)
Java:
public class Test
{
    private Square a3;
    private Square a4;
    private Square a5;
    private int nr[];

    public Test (int nr[])
    {

        a3=new Square();
        a4=new Square();
        a5=new Square();

        for(int t = 0; t < 6; ++t){
            boolean vergeben = true;
            while(vergeben){
                nr[t] = (int)(Math.random() * 6.0);
                vergeben = false;
                for(int r = 0; r < t; ++r)
                    if(nr[r] == nr[t]) vergeben = true;
            }
        }
        for(int t = 0; t < 6; ++t){
            a3.slowMoveHorizontal(3);
            a4.slowMoveHorizontal(4);
            a5.slowMoveHorizontal(5);
            a3.changeColor("a");
            a4.changeColor("b");
            a5.changeColor("c");
        }
    }
}

Was muss ich ändern damit es doch noch funktioniert?
Mit freundlichen Grüßen
RowdyN
 

Fulumbler

Mitglied
Auch dir ein frohes Fest :)

Finde deinen Ansatz nicht wirklich schlüssig.
Außerdem solltest du nr als ganzes initialisieren, bevor du auf einzelne Indizes zugreifst.

Ich weiß nicht, ob es einen klassischen Weg gibt, Befehle in zufälliger Reihenfolge auszuführen, aber du könntest bspw. jeden Befehl in einem eigenen Thread starten und jeder Thread schläft zu Beginn erst einmal eine zufällige Zahl an (Mili)Sekunden.

Oder du knüpfst jeden Befehl an ein Objekt (bspw. eine Action-Listener-artige Klasse, bei der jede Instanz eine action-Methode implementiert), schmeißt diese Objekte in ein Array und generierst dir mittels random-Zahlen eine Reihenfolge, in der du die Indizes abarbeitest.

...

Das mit den Threads ist erst einmal unkomplizierter.
 

RowdyN

Mitglied
Danke für deine Antwort. Die Idee mit der Array-List hatte ich auch schon und die mit den Thread's werde ich wohl ausprobieren :) Habe jetzt schon einen weiterren Versuch gestartet, bei dem mit aber Java immer die Fehlermeldung "orphaned case" ausgibt :( Vllt hast du da eine Ahnung wie ich das lösen kann.

Java:
public class Testt
{
    private Square a3;
    private Square a4;
    private Square a5;

    public Testt ()
    {

        a3=new Square();
        a4=new Square();
        a5=new Square();

        Random rand = new RANDOM();

        While(true);
        {
            Int zufall = rand.nextInt(5);
            Switch zufall;
            {
                case 0 :a3.slowMoveHorizontal(3)break;
                case 1 :a4.slowMoveHorizontal(4)break;
                case 2 :a5.slowMoveHorizontal(5)break;
                case 3 :a3.changeColor("a")break;
                case 4 :a4.changeColor("b")break;
                case 5 :a5.changeColor("c")break;               
            }
        }
    }
}

Ach ja mein erster Ansatz wurde duch die Zeile
int nr[9];
blockiert. Hätte natürlich
int[] nr = new int[9];
heißen müssen. Bin in C/C++ abgerutscht :p
Hat aber so oder so nicht funktioniert.

Mfg
RowdyN
 

InfectedBytes

Top Contributor
Probier den Ansatz mit den Threads bitte erst gar nicht aus, das ist ein extrem furchtbarer missbrauch von Threads, welcher zu starken Synchronisationsproblemen führen kann, den Ablauf extrem unnötig verlangsamt und außerdem dein Problem nicht wirklich löst.
 

Cromewell

Top Contributor
Das solltest du klein schreiben ;)
Das int auch.
Selbiges bei while
switch(zufall){ //code...}
case 0 :a3.slowMoveHorizontal(3)break;
case 1 :a4.slowMoveHorizontal(4)break;
case 2 :a5.slowMoveHorizontal(5)break;
case 3 :a3.changeColor("a")break;
case 4 :a4.changeColor("b")break;
case 5 :a5.changeColor("c")break;
Hier fehlen die ; nach jeder Funktion (a4.slowMoveHorizontal(4); break; );)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
RudiRüssel Befehle - Maschinenprogramme Java Basics - Anfänger-Themen 6
H Befehle in einem Menü aktivieren Java Basics - Anfänger-Themen 1
D import Befehle Java Basics - Anfänger-Themen 3
F Linux Befehle zum Übersetzen Java Basics - Anfänger-Themen 1
L Linux Befehle unter Windows in Eclipse ausführen Java Basics - Anfänger-Themen 3
D Erste Schritte Weitere Befehle implementieren Java Basics - Anfänger-Themen 27
T befehle unterschiedlicher anzahl an strings wiedergeben Java Basics - Anfänger-Themen 2
D Input/Output Mehrere Befehle nacheinander ausführen Java Basics - Anfänger-Themen 20
L Text/Befehle zu Programmen senden Java Basics - Anfänger-Themen 1
C Java und "normale" Befehle Java Basics - Anfänger-Themen 3
M Input/Output Allg. Befehle an die cmd.exe senden Java Basics - Anfänger-Themen 9
N Mit Java Befehle auf Konsole ausführen Java Basics - Anfänger-Themen 4
F alle 100ms Befehle ausführen Java Basics - Anfänger-Themen 26
S Befehle in ProcessBuilder nachschieben Java Basics - Anfänger-Themen 2
J Befehle aus anderen Klassen ausführen Java Basics - Anfänger-Themen 8
F Befehle von Java class ausführen Java Basics - Anfänger-Themen 3
F Befehle wiederholen Java Basics - Anfänger-Themen 7
B Threads Geschwindigkeit der Befehle auf verschiedenen PCs gleich machen Java Basics - Anfänger-Themen 3
G Kombination zweier Befehle (Preis festlegen & Rabatt berechnen) Java Basics - Anfänger-Themen 3
D Input/Output Stringbuffer Befehle bei Konvertierung in String Java Basics - Anfänger-Themen 19
C Nach Java-Installation sind Befehle erfolglos Java Basics - Anfänger-Themen 4
J Unklare Befehle Java Basics - Anfänger-Themen 4
K .bat Dateien starten, Ausgabe einlesen und Befehle übergeben Java Basics - Anfänger-Themen 32
H Befehle an andere Programme Java Basics - Anfänger-Themen 8
M Befehle der Eingabeaufforderung Java Basics - Anfänger-Themen 2
S return(Bedingung) ? [mehrere Befehle] Java Basics - Anfänger-Themen 5
M Umgebungsvariable gesetzt, aber nicht alle Befehle ausführbar Java Basics - Anfänger-Themen 6
M TextWrangler/VIM- Manche Befehle werden nicht farblich hervorgehoben Java Basics - Anfänger-Themen 3
S Mehrere Return-Befehle in einer Methode Java Basics - Anfänger-Themen 23
G Eigene Klasse für externe Befehle - Warten auf Prozesse Java Basics - Anfänger-Themen 6
N 2 Befehle zu einem machen Java Basics - Anfänger-Themen 10
K Shell Befehle mit Java aufrufen Java Basics - Anfänger-Themen 5
G CMD Befehle übergeben Java Basics - Anfänger-Themen 2
J Java Konsolenprogramm Befehle(Optionen) übergeben Java Basics - Anfänger-Themen 7
Blackskyliner Befehle an einen Thread senden? Java Basics - Anfänger-Themen 2
K Wieviele Befehle pro .java Datei Java Basics - Anfänger-Themen 4
C Befehle finden / Befehle richtig suchen Java Basics - Anfänger-Themen 5
E Befehle Java Basics - Anfänger-Themen 3
D MS Dos Befehle mit java Java Basics - Anfänger-Themen 3
G Falsche Java befehle, doch was ist falsch? Java Basics - Anfänger-Themen 9
D Win98 erkennt keine java Befehle.Umgebungsvariablen falsch? Java Basics - Anfänger-Themen 7
B Alt-Befehle Java Basics - Anfänger-Themen 4
C System.exit(int) und andere ähnliche Befehle Java Basics - Anfänger-Themen 5
R MS-DOS-Befehle ausführen Java Basics - Anfänger-Themen 11
S Befehle an externe Programme Java Basics - Anfänger-Themen 4
L Dos Befehle via Java Java Basics - Anfänger-Themen 4
L Hilfe! Liste mit Items werden ausgegeben aber nicht in zufälliger Reihenfolge Java Basics - Anfänger-Themen 6
N Zufälliger Long Java Basics - Anfänger-Themen 15
S Zufälliger Zahlengenerator Java Basics - Anfänger-Themen 7
G Zahlen in zufälliger Reihenfolge ausgeben/speichern. Java Basics - Anfänger-Themen 2
Rudolf Datentypen Vectorliste mit Werten in zufälliger Anordnung Java Basics - Anfänger-Themen 5
D zufälliger Spielplan Java Basics - Anfänger-Themen 3
G Array mit zufälliger Länge Java Basics - Anfänger-Themen 4
B Stack mit Strings in zufälliger Reihenfolge füllen Java Basics - Anfänger-Themen 4
Thomas Uppe 2D Array Reihenfolge vermischen Java Basics - Anfänger-Themen 4
E Reihenfolge der Werte umdrehen (mittels statischem int-Array Java Basics - Anfänger-Themen 3
D Methode: Array Reihenfolge tauschen Java Basics - Anfänger-Themen 3
J Methoden Die Reihenfolge der Iterator-Elemente umkehren Java Basics - Anfänger-Themen 3
R While-Loop der die Einträge eines Arrays in umgekehrter Reihenfolge anzeigt Java Basics - Anfänger-Themen 3
D Array Elemente sortieren in aufsteigender Reihenfolge Java Basics - Anfänger-Themen 10
D Methoden nach einer bestimmten Reihenfolge ausführen. Java Basics - Anfänger-Themen 20
I Array in umgekehrter Reihenfolge - Erklärung - Java Basics - Anfänger-Themen 3
R Werte und Reihenfolge in 2d Arrays vergleichen Java Basics - Anfänger-Themen 5
Q Besitzen zwei Strings identische Buchstaben, nur in anderer Reihenfolge? Java Basics - Anfänger-Themen 10
M Feste Reihenfolge von dem Ablauf von Methoden Java Basics - Anfänger-Themen 7
H Knoten-Reihenfolge einer LinkedList invertieren Java Basics - Anfänger-Themen 11
L Richtige Reihenfolge der Dateien Java Basics - Anfänger-Themen 5
C Werte im Vector in zufällige Reihenfolge bringen Java Basics - Anfänger-Themen 14
C Vector-Inhalt in zufällige Reihenfolge bringen Java Basics - Anfänger-Themen 6
A String in umgekehrter Reihenfolge ausgeben Java Basics - Anfänger-Themen 7
L Reihenfolge Ausgabe Java Basics - Anfänger-Themen 5
J Algorithmus - Strings auf eigene Reihenfolge miteinander vergleichen Java Basics - Anfänger-Themen 4
D TAB Reihenfolge im JSinner Java Basics - Anfänger-Themen 1
B Arrays in Reihenfolge vertauschen Java Basics - Anfänger-Themen 6
J Reihenfolge im Vector lässt sich nicht drehen Java Basics - Anfänger-Themen 9
M Array Reihenfolge umdrehen Java Basics - Anfänger-Themen 9
J Klassen Reihenfolge beim Aufruf von Klassen Java Basics - Anfänger-Themen 1
L zweidimensionales char array reihenfolge ändern ? Java Basics - Anfänger-Themen 2
S Warum muss ich die operationen mit AffineTransform in umgekehrter Reihenfolge ausfuehren..? Java Basics - Anfänger-Themen 4
M Reihenfolge von Testmethoden in JUnit beeinflussen Java Basics - Anfänger-Themen 2
M Ausgabe in falscher Reihenfolge Java Basics - Anfänger-Themen 7
S Vokal Reihenfolge Java Basics - Anfänger-Themen 1
C if Reihenfolge Java Basics - Anfänger-Themen 2
W String von hinten alle drei Zeichen abschneiden und in umgekehrter Reihenfolge ausgeben. Java Basics - Anfänger-Themen 9
F Reihenfolge des Quelltexts Java Basics - Anfänger-Themen 6
S Jede Reihenfolge einer zufällig langen Liste ausprobieren Java Basics - Anfänger-Themen 3
B AffineTransform - Reihenfolge der Operationen Java Basics - Anfänger-Themen 3
B Methoden Logische Reihenfolge in Programmen? Java Basics - Anfänger-Themen 4
D Problem mit Initialisierung und Reihenfolge Java Basics - Anfänger-Themen 10
O Zwingende Reihenfolge von Methoden Java Basics - Anfänger-Themen 33
P Vereinfachte for-Schleife wird in umgekehrter Reihenfolge ausgewertet Java Basics - Anfänger-Themen 7
X Collections Reihenfolge bestimmter Objekte in einer ArrayList verändern Java Basics - Anfänger-Themen 2
S Buttons übereinander legen - Reihenfolge Java Basics - Anfänger-Themen 2
R Reihenfolge im Konstruktor der Objekte Java Basics - Anfänger-Themen 13
L Properties Reihenfolge vorgeben Java Basics - Anfänger-Themen 13
N Reihenfolge von Methoden Java Basics - Anfänger-Themen 5
F Reihenfolge in der Events abgearbeitet werden Java Basics - Anfänger-Themen 2
A Wörter umgekehrten Reihenfolge ausgeben Java Basics - Anfänger-Themen 3
A Reihenfolge bei equals() Java Basics - Anfänger-Themen 2
K Reihenfolge Modifikatoren Java Basics - Anfänger-Themen 6

Ähnliche Java Themen

Neue Themen


Oben