Math.random und Strings

Hai,

ich will ne Methode erstellen die Stein, papier oder schere ausgibt, dafür hab ich MAth.random benutzt

hier der code
Java:
public class Aufgabe16 {

public static void main (String[] args ) {
	long schere=1, stein=0, papier=2;
	  
String sch = (new Long (schere)).toString();
String st = (new Long (stein)).toString();
String p = (new Long (papier)).toString();
//System.out.println("Der PC trifft nun eine Wahl");

int wahl = (int) (Math.random()*3);
System.out.println(wahl);

	
}

}

Er gibt jetzt aber nur Zahlen aus, also entweder 0, 1 oder 2.

Ich wollte aber dass er stein, papier oder schere ausgibt, was ich ja auch davor mit long definiert habe,

was fehlt hier ?
 

ARadauer

Top Contributor
was soll ausgegeben werden? stein oder die zahl?
Java:
      String[] auswahl = { "Stein", "Schere", "Papier" };  
      // String sch = (new Long (schere)).toString(); ich frag gar nicht ;-)
      System.out.println("Der PC trifft nun eine Wahl");
      int wahl = (int) (Math.random() * auswahl.length);
      System.out.println(auswahl[wahl]);
 

Sempah

Bekanntes Mitglied
Ich wollte aber dass er stein, papier oder schere ausgibt, was ich ja auch davor mit long definiert habe,


du hast nur Variablen mit den Namen stein, papier und schere vom Typ long definiert und nicht bspw. Strings mit den Werten stein, papier und schere.

Btw.
Code:
String sch = (new Long (schere)).toString();
sowas schaut grausig aus ...
 

VfL_Freak

Top Contributor
Moin,

vlt mal zur Erklärung .... mit
(new Long (schere)).toString();
wird lediglich der Wert der long-Variablen mit Namen "schere" (hier also '1') in einen String überführt (also wiederum "1"), nicht jedoch der NAME der Variable !!

Du musst es schon so umsetzen, wie weiter oben von ARadauer beschrieben !

Gruß
Klaus
 
ok, das funktioniert schon mal, danke,

aber ich will ja, dass die Strings also Stein, Papier, Schere mit den Zahlen 0,1,2 belegt werden.

D.h. dass ich dann später nur noch den Gewinner des Spiels anhand der Zahlen festlegen kann. Sprich wenn ich das von Arauder umsetze, dann hab´ ich ja keine Zahlen, sondern nur Namen
 
B

bygones

Gast
Java:
public static void main(String[] args) {
        System.out.println(S.Papier + " --> " + S.Papier.ordinal());
        System.out.println(S.Schere + " --> " + S.Schere.ordinal());
        System.out.println(S.Stein + " --> " + S.Stein.ordinal());
    }

    enum S {
        Stein, Schere, Papier
    }

abgesehen davon ... richtig coole Nerds spielen: rock paper scissors lizard spock !
 

Andi_CH

Top Contributor
Hm, er zeigt dir nur, wie du am einfachsten von einer Zahl auf den enstprechenden String zur Ausgabe kommst ....

Alles andere liegt an dir
 

Landei

Top Contributor
Ich würde eine objektorientiertere Variante vorschlagen:

Java:
import java.util.Random;
public class Aufgabe16 {
  
   public enum Auswahl { Stein, Schere, Papier };
   private final static Random random = new Random();
 
   public static void main (String[] args ) {
      System.out.println(auswahl());
   }
  
   public static Auswahl auswahl() {
       Auswahl[] values = Auswahl.values();
       return values[random.nextInt(values.length)];
   }
}
 

Andi_CH

Top Contributor
Ih muss präzisieren:

aber ich will ja, dass die Strings also Stein, Papier, Schere mit den Zahlen 0,1,2 belegt werden.

Es ist unmöglich eine Zahl mit einem String zu "belegen";
Aber es ist möglich über die Zahl zu einem String zu kommen -> ARadauer zeigte ja wie!

Java:
String[] auswahl = { "Stein", "Schere", "Papier" };  
System.out.println(auswahl[0]); // Stein
System.out.println(auswahl[1]); // Schere
System.out.println(auswahl[2]); // Papier

Ausserdem ist in seiner Antwort die variable "wahl" mit dem gezogenen Wert belegt, den du für die Enscheidung wer nun gewonnen hat benutzen kannst.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
J Math.Random Java Basics - Anfänger-Themen 9
W Bestimmte Zahlen bei Math.random ausschließen? Java Basics - Anfänger-Themen 31
S Math.random funktioniert nicht Java Basics - Anfänger-Themen 5
alialhajhossein math.random Java Basics - Anfänger-Themen 3
D Wahrscheinlichkeiten mit Math.random() Methode Java Basics - Anfänger-Themen 1
A Random Double mit Math.round() runden? Java Basics - Anfänger-Themen 1
B Math.random mit Boolean array? Java Basics - Anfänger-Themen 17
I math.random Grenzwerte Java Basics - Anfänger-Themen 2
E Methoden Math.Random() kürzen ? Java Basics - Anfänger-Themen 2
J Klassen Math && Random: wie zufällig sind Zufallszahlen? Java Basics - Anfänger-Themen 19
J Methoden Math.random unklar Java Basics - Anfänger-Themen 4
Thorwine Erste Schritte Wuerfelspiel mit Math.random() Java Basics - Anfänger-Themen 10
S Math.random() Zufall ? Java Basics - Anfänger-Themen 2
H Ist Math.Random() eine Methode oder ein Methodenaufruf (Klausurfrage) Java Basics - Anfänger-Themen 4
X Problem mit Math.random() Java Basics - Anfänger-Themen 2
T Random vs. Math.random() Java Basics - Anfänger-Themen 2
B Verstehe ZufallInt = (int) (Math.random() * 5 + 1); nicht Java Basics - Anfänger-Themen 9
T Zufallserzeugung mit math.random und speichern in array Java Basics - Anfänger-Themen 29
J Woher kommt das Objekt "Math" bei Math.random(); ? Java Basics - Anfänger-Themen 3
P Typecasting für Ganzzahlige Zufallszahl (Math.random) Java Basics - Anfänger-Themen 2
J Bedeutung von math.random() math.round() Java Basics - Anfänger-Themen 7
F Problem Math.random in for-Schleife Java Basics - Anfänger-Themen 8
R (Math.random()*49) zahl darf aber nur einmal gezogen werden Java Basics - Anfänger-Themen 11
C math.random() Java Basics - Anfänger-Themen 9
R math.random wertebereich 16-21 Java Basics - Anfänger-Themen 3
Luk10 math.random() Java Basics - Anfänger-Themen 2
J Math.random() - kurze frage. Java Basics - Anfänger-Themen 20
J Math.random Java Basics - Anfänger-Themen 12
T Math.random() Zahlen von 25 - 50. Wie? Java Basics - Anfänger-Themen 7
H Brauche ganz dringend HILFEEE! Math random Java Basics - Anfänger-Themen 19
T Math.Random negativer Intervall Java Basics - Anfänger-Themen 2
B Zahlenwiederholung bei Math.random verhindern Java Basics - Anfänger-Themen 4
J Zufallszahl ohne Math.random Java Basics - Anfänger-Themen 4
A Probleme mit Math.random Java Basics - Anfänger-Themen 4
P 2n Potenzieren ohne Math.pow oder pow Java Basics - Anfänger-Themen 8
L Problem bei Rechnung mit Math.pow Java Basics - Anfänger-Themen 13
sserio Math. Befehl wird rot markiert Java Basics - Anfänger-Themen 5
L Math.exp also eigenen Algorithmus Java Basics - Anfänger-Themen 2
V Erste Schritte Berechnen von Sinus; sin(x) ohne Math.* Java Basics - Anfänger-Themen 1
B Potenzrechnung mit WindowBuilder ohne math.pow() Java Basics - Anfänger-Themen 1
B Potenzen ohne Math.pow Java Basics - Anfänger-Themen 4
N Datentypen Math.floor rundet nicht ab Java Basics - Anfänger-Themen 4
S Math.ceil für float Java Basics - Anfänger-Themen 1
M Warum ist dieses Feld der Klasse Math immutable? Java Basics - Anfänger-Themen 7
S math Methoden in Java (quadrat) Java Basics - Anfänger-Themen 7
C Erste Schritte Math.sin und Co. funktionieren nicht Java Basics - Anfänger-Themen 5
A Potenzen ohne math.pow Java Basics - Anfänger-Themen 1
L Klassen Point- und Math-Klasse Java Basics - Anfänger-Themen 3
J Musterlösung Verständnis Frage zu Math.abs() Java Basics - Anfänger-Themen 5
J java.lang.math asin() Java Basics - Anfänger-Themen 18
L Math.floor und double Array Java Basics - Anfänger-Themen 13
B Math.acos() Java Basics - Anfänger-Themen 4
N Methoden Probleme mit Math.cos Java Basics - Anfänger-Themen 3
J Methoden Rekursive Potenz ohne Math.Pow() Java Basics - Anfänger-Themen 9
Luk10 3. Wurzel mit Math.pow(x, (1/3)) Java Basics - Anfänger-Themen 2
J Datentypen Math.sqrt() immer NaN Java Basics - Anfänger-Themen 8
T Ungenaue Werte bei Math.atan Java Basics - Anfänger-Themen 10
M Math.round Java Basics - Anfänger-Themen 32
M Math Class Java Basics - Anfänger-Themen 2
B Math.abs Java Basics - Anfänger-Themen 4
Haave Postfix-Rechner: mehrere math. Operationen nacheinander ausführen Java Basics - Anfänger-Themen 8
T Math.signum Java Basics - Anfänger-Themen 2
N Math + Variablen + Ausgabe Java Basics - Anfänger-Themen 2
B math. Operationen + Ausgabe Fehler :S Java Basics - Anfänger-Themen 5
C math.pow funktionert nicht richtig oder garnicht Java Basics - Anfänger-Themen 4
G Quelltext von Methoden in der Klasse Math Java Basics - Anfänger-Themen 11
D runden ohne math! (zur not auch mit) Java Basics - Anfänger-Themen 9
G Klasse Math Java Basics - Anfänger-Themen 2
T Math.tan() Problem Java Basics - Anfänger-Themen 2
M Math.sin in Radiant in Java? Java Basics - Anfänger-Themen 5
C Math-Funktion Java Basics - Anfänger-Themen 10
S Math.tan Problem rechnet falsches Ergebniss aus. Java Basics - Anfänger-Themen 3
F Math.abs() Java Basics - Anfänger-Themen 3
M Probleme mit Math.round() Java Basics - Anfänger-Themen 5
P Math.abs, praktische Anwendung? Java Basics - Anfänger-Themen 4
M Eclipse: Fehler bei: import java.lang.math Java Basics - Anfänger-Themen 7
D math und abs() Java Basics - Anfänger-Themen 14
E Problem mit Methode Math.max Java Basics - Anfänger-Themen 2
G Math.cos Java Basics - Anfänger-Themen 4
S Math-Befehl für Quadrieren! Java Basics - Anfänger-Themen 6
onlyxlia Anzahl Random Zahlen mit Scanner abfragen und in Array speichern Java Basics - Anfänger-Themen 10
laxla123 Bedeutung int random Java Basics - Anfänger-Themen 3
monsterherz Arbeiten mit Random Java Basics - Anfänger-Themen 12
XWing Random Punkte erstellen mit der Random klasse Java Basics - Anfänger-Themen 15
I aus 2 random zahlen soll nur die ungerade summe der beiden genommen werden. Java Basics - Anfänger-Themen 13
K Problem mit "Random" Java Basics - Anfänger-Themen 5
W n verschiedene Arrays zufällig ausgeben - mit der Random-Klasse? Java Basics - Anfänger-Themen 8
S Random(x,y,z) Java Basics - Anfänger-Themen 4
JD_1998 Random Array sortieren mit Hilfe einer Methode Java Basics - Anfänger-Themen 4
L Zufälliges Objekt aus der ArraylList ohne java.util.Random Java Basics - Anfänger-Themen 56
W Random Zahl unter Berücksichtung eines Durchschnitts Java Basics - Anfänger-Themen 7
T Random soll Zufallszahl beibehalten. Java Basics - Anfänger-Themen 11
C Arraywerte random vertauschen Java Basics - Anfänger-Themen 2
SchmidiMC Methoden Random in Methode neu generieren lassen Java Basics - Anfänger-Themen 1
J Operatoren Random wird nur einmal erstellt und dann immer verwendet Java Basics - Anfänger-Themen 2
D Erste Schritte Random erzeugen Java Basics - Anfänger-Themen 28
D Erste Schritte Random Java Basics - Anfänger-Themen 79
Z Problem mit "Random" in Java Java Basics - Anfänger-Themen 12
Z Array-Index einmalig je mit Random füllen Java Basics - Anfänger-Themen 7
J Wie lege ich eine durch Random ausgesuchte Zahl in ein Array? Java Basics - Anfänger-Themen 3

Ähnliche Java Themen

Neue Themen


Oben