1001Fragen zu String Variablen

ichebem

Mitglied
Jo der titel sagt es.. ich hab ein paar probleme mit string-variablen!

Frage 1:

Ist es möglich eine if-abfrage mit string variablen zu machen?

Frage 2

wieso geht das hier nicht?

System.out.println("Dein Tipp" + Name2 );
Fehlermeldung: Cannot find symbol

ja.....Name2 wird vorher verwendet und ist ne String Variable.....
und ja mit integer-Variablen (anstatt Name2, Zahl2, funktioniert der gleiche code!)

mfg
 
Zu 1. was verstehst du unter if-abfrage mit String variablen?

zu 2.
Poste mal bitte den code mit [.java] code [./java] ohne die PUnkte, wodrin du die variable (variablenNamen schreibt man klein ^^) erstellst und auch vorher benutzt wie du sagst und dann eben ausgeben willst
 
Der Fehler "Cannot find symbol" heißt meistens, dass es diese Variable nicht gibt.

Sicher kannst du Strings in If-Bedingungen benutzen. Du kannst eigentlich alles vergleichen oder abfragen.

MFG

zEriX
 
der ganze noch sinnlose code ist unten zu sehen....
nachher soll dann noch erweitert werden...istwie gesagt sinnlos..aber sollte trotzdem funktionieren oder?

jo der formatierung hats über den ahufen gehauen.....
wie denn?

if (int == 1) { <--für int und wie für string

mein quellcode hat gesagt.:
import java.io.*;

public class raten {

public static void main (String[] args)
throws IOException {

System.out.println("Lasst uns ein Spiel Spielen!");
System.out.println("Wie viele seit ihr? (1-4 Spieler)");

BufferedReader bin = new BufferedReader( // Liest die Tasten die gedrückt werden aus
new InputStreamReader(System.in));
String Spieleranzahl = bin.readLine();
int zahl = Integer.parseInt(Spieleranzahl);

if(zahl == 1) {

System.out.println("Name von Spieler 1");
String name1 = bin.readLine();

} else if(zahl == 2) {
System.out.println("Name von Spieler 1");
String name1 = bin.readLine();

System.out.println("Name von Spieler2");
String name2 = bin.readLine();

} else if(zahl == 3) {
System.out.println("Name von Spieler 1");
String name1 = bin.readLine();

System.out.println("Name von Spieler2");
String name2 = bin.readLine();

System.out.println("Name von Spieler3");
String name3 = bin.readLine();

} else {
System.out.println("Name von Spieler 1");
String name1 = bin.readLine();

System.out.println("Name von Spieler2");
String name2 = bin.readLine();

System.out.println("Name von Spieler3");
String name3 = bin.readLine();

System.out.println("Name von Spieler4");
String name4 = bin.readLine();
}
System.out.println("Ich denke mir nun eine Zahl zwischen 0 und 9 aus!");
System.out.println("Ihr müsst raten!");

if(zahl == 1) {
System.out.println("Dein Tipp" + name1 );
String Tipp01 = bin.readLine();
int tipp1 = Integer.parseInt(Tipp01);

} else if(zahl == 2) {
System.out.println("Dein Tipp" + name1 );
String Tipp01 = bin.readLine();
int tipp1 = Integer.parseInt(Tipp01);

System.out.println("Dein Tipp" + name2 );
String Tipp02 = bin.readLine();
int tipp2 = Integer.parseInt(Tipp02);

} else if(zahl == 3) {
System.out.println("Dein Tipp" + name1 );
String Tipp01 = bin.readLine();
int tipp1 = Integer.parseInt(Tipp01);

System.out.println("Dein Tipp" + name3 );
String Tipp03 = bin.readLine();
int tipp3 = Integer.parseInt(Tipp03);

System.out.println("Dein Tipp" + name2 );
String Tipp02 = bin.readLine();
int tipp2 = Integer.parseInt(Tipp02);

} else {
System.out.println("Dein Tipp" + name4 );
String Tipp04 = bin.readLine();
int tipp4 = Integer.parseInt(Tipp04);

System.out.println("Dein Tipp" + name1 );
String Tipp01 = bin.readLine();
int tipp1 = Integer.parseInt(Tipp01);

System.out.println("Dein Tipp" + name3 );
String Tipp03 = bin.readLine();
int tipp3 = Integer.parseInt(Tipp03);

System.out.println("Dein Tipp" + name2 );
String Tipp02 = bin.readLine();
int tipp2 = Integer.parseInt(Tipp02);
}
}
}
 
Zuletzt bearbeitet:
Einfach: Du deklarierst deine name1 Variable in einem Block, genauer im else Block. Außerhalb dieses Blocks existiert die Variable nicht mehr.
 
Omfg, ich sagte [ code=java ] und nicht [ quote ]
Klassennamen schreibt man gross, methoden udn variablen Namen klein, das kann doch net so schwer sein?

Strings vergleicht man mit equals oder equalsIgnoreCase
 
sorry..ich bin erst seit 3tagen an java dran..tut mir echt leid.....aber danke euch..versuche es dann mal.....und wie kriege ich die variable in den else-block neu deklarieren?
 
Deklarier sie entweder Global oder in dem Block indem du sie brauchst, z.b. am Anfang der Methode. Anschließend kannst du ihr im else Block einfach den gewünschten wert zuweisen.

Ich will net meckern, aber du solltest echt mal etwas den Code formatieren, sprich einrücken.
 
@ichebem
Du solltest wenn du so kurz erst Java machst, auf keinen Fall so nen groesses Project machen! Und schon gar kein Spiel!
Fang an mit kleinen Tutorials, das du erstma weisst wie man etwas deklariert und wo die variablen hingehoeren
 
Zuletzt bearbeitet:
ok leuts......habe es hingekriegt...leigt daran dass ich ein bisl verpeilt bin

dumme fragen von mir

aber danke an euch alle echt super!
 
Zurück