Variable aus einer Methode einlesen in einer verarbeiten und

Status
Nicht offen für weitere Antworten.

Chroman

Mitglied
Hi, ich möchte, dass die Variable benutzername von der methode "BenutzernameEinlesen" aus der Main methode ausgelesen wird. Dann soll in der methode "BenutzernameEinlesen" der Variable "benutzername" ein String zugewiesen werden, dieser soll dann wieder zurück an die Main methode gegeben werden damit er in anderen Methoden wieder abgerufen werden kann.

Versteht ihr was ich mein?

Code:
import EAjava.*;

public class test {
	static Input eing = new Input();

	public static void main(String[] args) {

		String benutzername = new String("");

		System.out.println(BenutzernameEinlesen(benutzername));

		System.out.println(eingabemenue(benutzername));

	}

	private static String BenutzernameEinlesen(String benutzername) {

		benutzername = eing.readString("Bitte gib dein Vornamen ein: ");
		System.out.println("");
		System.out.println("");

		String thomas = new String("thomas");

		if (angela.equalsIgnoreCase(benutzername)) {
			benutzername = "Thomas";
		}

		System.out.println("Vielen Dank " + benutzername + " für die Eingabe");

		return benutzername;
	}

	private static char eingabemenue(String benutzername) {

		System.out.println("\n \n \n \n");
		System.out.println(benutzername);
		System.out.println("So " + benutzername + " nun darfst du wählen");
		System.out.println("1 ");
		System.out.println("2 ");
		System.out.println("3 ");
		System.out.println("4 ");
		System.out.println("x ");
		System.out.println("_______________________________");
		char e = eing.readChar("Bitte Option eingeben! ");
		System.out.println();

		return e;
	}

}

Ich würde gerne dass der eingebene Benutzername in der Methode "eingabemenue" eingelesen wird und dann

Code:
		System.out.println(benutzername);
		System.out.println("So " + benutzername + " nun darfst du wählen");

ausgegeben wird! Jedoch klappt dies nicht! Die Ausgabe sieht so aus:



So nun darfst du wählen

sie sollte aber so aussehen (wenn man Thomas als Name eingegeben hat)

So Thomas nun darfst du wählen



Warum klappt das nicht? Wie kann ich den eingegeben Benutzername für alle Methoden verfügbar machen ohne die ganze Methode BenutzernamenEinlesen komplett aufzurufen?


Danke für eure Hilfe
 

sliwalker

Top Contributor
Hi,


Hier die Klasse in der main ist:
Code:
import EAjava.*; 

public class test 
{ 
   static Input eing = new Input(); 

   public static void main(String[] args) 
   { 

      String benutzername = "";
      EingabeAusgabe ea = new EingabeAusgabe();

      ea.benutzernamenEinlesen();

      if (ea.eingabeMenue(ea.getBenutzername()) == 'a' )
      {
            blablabla....
      }
   } 
}

Hier die Klasse die einliest und ausgibt:
Code:
public class EingabeAusgabe
{
   private String benutzername;

   public EingabeAusgabe() 
   {
        benutzername = "";
   }

   public void setBenutzername(String name)
   {
        this.benutzername = name;
   }

   public String getBenutzername()
   {
        return (this.benutzername);
   }

   public void benutzernameEinlesen() 
   { 
      benutzername = eing.readString("Bitte gib dein Vornamen ein: "); 
      System.out.println(""); 
      System.out.println(""); 

      String thomas = "thomas"; // reicht wenn Du den String so anlegst

      if (thomas.equalsIgnoreCase(benutzername))  // alternativ: "thomas".equalsIgnoreCase(...)
      { 
         benutzername = "Thomas"; 
      } 

      System.out.println("Vielen Dank " + benutzername + " für die Eingabe"); 
   } 

   public char eingabeMenue(String benutzername) 
   { 
      System.out.println("\n \n \n \n"); 
      System.out.println(benutzername); 
      System.out.println("So " + benutzername + " nun darfst du wählen"); 
      System.out.println("1 "); 
      System.out.println("2 "); 
      System.out.println("3 "); 
      System.out.println("4 "); 
      System.out.println("x "); 
      System.out.println("_______________________________"); 
      char e = eing.readChar("Bitte Option eingeben! "); 
      System.out.println(""); 

      return (e); 
   } 
}

Hoffe das konnte Dir helfen;)

greetz
SLi
 

sliwalker

Top Contributor
Hi,

hehe.
In der main erstellst Du ein Objekt vom Typ EingabeAusgabe.
Dieses Objekt speichert in sich den benutzernamen, dargestellt durch die Klassenvariable, zu der es, wie es sein sollte, getMethoden() und setMethoden() gibt.
Mit diesen Methoden wird auf die variable zugegriffen, wenn man sich ausserhalb der Klasse/Objekt des Typs EingabeAusgabe befindet.

In main steuerst Du jetzt nur noch, WAS, WANN passieren soll, aber nicht mehr wirklich WIE. Die einlesearbeit macht jetzt die EingabeAusgabe-Klasse. Du brauchst auch einer Methode keine Parameter mitgeben, wenn diese sie gar nicht verwendet. Wenn Du benutzername in der Methode ändern willst, musst Du dafür sorgen, dass die Variable innerhalb der ganzen Klasse "sichtbar" ist und kannst dann von beliebiger Stelle aus den Wert der Variabklen ändern. Übergibst Du einen Parameter, so ist dieser nur innerhalb der Methode gültig und wird danach sofort wieder verworfen. In Deinem Beispiel hast Du benutzername übergeben und innerhalb der MEthode geändert. Die Ändernug bezog sich leider nur auf eine Kopie von benutzername.

Wenn Du noch Fargen hast, frag ruhig ;)

greetz
SLi
 

Chroman

Mitglied
Hey cool dankeschön!

Also mit Objekten haben wir auch schon was gemacht in der Uni ich bin diese Woche aber noch nicht dazu gekommen das mal nachzulesen, ich weiß aber, was ich heute lesen werde *g* Objekte scheinen wohl ganz sinnvoll zu sein!

Vielen Dank!

Ach doch noch eine Frage, welche Namen müssen Fest sein und was kann ich variieren?

(getMethoden(), setMethoden(), EingabeAusgabe ea = new EingabeAusgabe(), ea.benutzernamenEinlesen();
 

norman

Top Contributor
evtl solltest du künftig System.out.println(" ");
durch System.out.println(); ersetzen, falls es dir lediglich um einen Zeilenumbruch geht.
(bei mehreren hintereinander auch System.out.println("\n\n\n") ..
 

sliwalker

Top Contributor
Chroman hat gesagt.:
Ach doch noch eine Frage, welche Namen müssen Fest sein und was kann ich variieren?

(getMethoden(), setMethoden(), EingabeAusgabe ea = new EingabeAusgabe(), ea.benutzernamenEinlesen();

hä? :autsch: Versteh ich nicht :D
Wie fest sein und variieren?

In Java schreibt man in der "Höckerschreibweise", wie es meiner Lehrer damals formulierte.
Klassennamen groß (EingabeAusgabe), KONSTANTEN so, methodenNamenMethode() fangen klein an und bei Sinnabschnitten wieder den ersten groß. Variablen entweder nur klein oder wie Methoden. Es gibt Leute die verwenden noch dazu die ungarische Notation. Dh. zB für ein int: int nAnzahl also ein Bezeichner für den Typ vor dem Namen. Getter und Setter haben immer das Prefix get oder set^^ und dazu den Namen der Variable. zB getNAnzahl()(ja sieht beschissen aus, wäre aber Konvetion) deshalb verzichte ich auf Ungarn und schreibe lieber getAnzahl().

Wichtig ist nur, dass Du es einheitlich machst. Gewöhn Dir einen Stil an und halt ihn im ganzen Programm durch. Manchmal gibt es Methodennamen die es schon von Java aus gibt, weil sie zB teil einer Klasse sind (getHeight(), getWidth()), wenn Du diesselben Namen verwendest und nur anderen Code reinschreibst, das "überschreibst" Du die Methoden und es kann zu Fehlern kommen (kürzlich hier vorgekommen). Also halt die Augen offen, welche Namen schon vergeben sind ;)

Meintest Du das?

greetz
SLi
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
E Variable in einer Methode Allgemeine Java-Themen 13
S wie übergebe ich eine Variable aus einer Methode an main() ? Allgemeine Java-Themen 16
W Variable Initialisierung mit dem Ergebnis einer Regex Allgemeine Java-Themen 1
E Variablen Nach Übergabe einer Variable den Constructor aufrufen Allgemeine Java-Themen 16
M Collections Typ Variable einer generischen Collection ? Allgemeine Java-Themen 4
O Variablen Originalname einer übergebenen Variable prüfen Allgemeine Java-Themen 9
A variable aus einer anderen klasse verändern Allgemeine Java-Themen 5
C JFormattedTextField Inhalt einer Variable zuweisen Allgemeine Java-Themen 11
C Variablen Variable einer Klasse in einer anderen Klasse Nutzen Allgemeine Java-Themen 8
J in einer static Variable Wert ändern Allgemeine Java-Themen 6
G Speicherverbrauch einer Variable Allgemeine Java-Themen 2
D LinkedList anhand einer long-Variable der Objekte sortieren Allgemeine Java-Themen 5
G Problem mit einer Variable Allgemeine Java-Themen 3
A Clean Code: Variable vs. Methode Allgemeine Java-Themen 8
J Wo kommt der Wert der Variable her ? Allgemeine Java-Themen 6
H lokale Variable bei Optional verwenden Allgemeine Java-Themen 11
A Variable in if initialisieren Allgemeine Java-Themen 23
S Variable als Objekt Name Allgemeine Java-Themen 3
D "Automatisierte", variable verschachtele for-Schleife Allgemeine Java-Themen 9
T statische Variable und nicht-statische Methode Allgemeine Java-Themen 2
P Variable wird in for - loop nicht richtig hochgezählt Allgemeine Java-Themen 11
A Variablen non-static variable cannot be referenced from a static content Allgemeine Java-Themen 4
A Variable, welche Exeption wirft als "Global" deklarieren Allgemeine Java-Themen 13
A Scanner Variable Klassenimtern deklarieren Allgemeine Java-Themen 12
L Variablen Variable nicht aktualisiert Allgemeine Java-Themen 3
denny86 NetBeans Ordnernamen rekursiv auslesen und in Variable verarbeiten Allgemeine Java-Themen 38
R Variable durch mehrere Methoden ändern und nutzen Allgemeine Java-Themen 17
P Static Variable -> unterschiedliche Werte? Allgemeine Java-Themen 1
C Abstrakte Klasse, lokale Variable-Problem Allgemeine Java-Themen 1
T AWT AWT-EventQueue-0 Null_Pointer_Exception durch Variable Allgemeine Java-Themen 12
M Variable ändern bei jedem Schleifendurchlauf Allgemeine Java-Themen 32
F Wert in Variable schreiben, wenn diese gerade genutzt wird Allgemeine Java-Themen 10
P Prüfen ob es Variable mit Namen gibt der als String übergeben wird Allgemeine Java-Themen 7
S JFrame Variable mitgeben Allgemeine Java-Themen 5
M Variable außerhalb Klasse definierbar? Allgemeine Java-Themen 2
X Bild -> lokale Variable -> DB -> lokale Variable Allgemeine Java-Themen 3
F Aktuelle Variable Allgemeine Java-Themen 2
J String Variable verändert sich plötzlich Allgemeine Java-Themen 8
J private static final String variable Allgemeine Java-Themen 8
A Long variable wird negativ??? Allgemeine Java-Themen 1
reibi Classpath Classpath Variable beim Tomcat Allgemeine Java-Themen 2
M Zeiger auf statische Variable Allgemeine Java-Themen 1
H Klassennamen zum Aufruf eines statischen Feldes aus Variable holen Allgemeine Java-Themen 4
F Variable übergeben?! Allgemeine Java-Themen 2
L Variable auch in der function verfügbar machen? Allgemeine Java-Themen 4
P Variablen Variable von void im ActionListener verwenden Allgemeine Java-Themen 3
M Parallele Programmierung: volatile Variable nimmt ungewöhnlichen Wert an Allgemeine Java-Themen 3
iB0T Variable Wert ausrauchen Allgemeine Java-Themen 3
T Variablen Variable wird als nicht genutzt angezeigt Allgemeine Java-Themen 8
S Datentypen Eine Variable von String zu Int ändern Allgemeine Java-Themen 5
Hoppelmann "Variable" in String erkennen Allgemeine Java-Themen 2
B Variable class in java.lang.Object Allgemeine Java-Themen 11
X Windows-Environment-Variable per jRegistryKey anpassen Allgemeine Java-Themen 6
P Variable in Array stellen Allgemeine Java-Themen 11
M Arraynamen durch Variable festlegen lassen Allgemeine Java-Themen 5
J Anderem Thread Variable mitgeben Allgemeine Java-Themen 2
nrg Auszulagernder Part, der aber variable Methode/Klasse aufruft Allgemeine Java-Themen 7
I %AppData% Variable für einen Prozess setzen Allgemeine Java-Themen 23
G Variablen Variable extern speichern - wie? Allgemeine Java-Themen 9
M Variablen Wie Variable verfügbar machen? Allgemeine Java-Themen 16
G Variable Methodenwahl Allgemeine Java-Themen 11
B Umgebungsvariable Variable wird nicht übernommen Allgemeine Java-Themen 4
N variable Anzahl von Objektinstanzen zur Laufzeit erstellen Allgemeine Java-Themen 4
C Environment Variable in Pfad -> Datei öffnen Allgemeine Java-Themen 5
Q Variable aus Schleife/Switch benutzen Allgemeine Java-Themen 7
algorismi int-variable Value Change event Allgemeine Java-Themen 3
E Variable dynamisch ausgeben Allgemeine Java-Themen 5
trash super() mit Variable bestücken Allgemeine Java-Themen 3
X Cannot refer to a non-final variable settings inside an inner class defined in a different method Allgemeine Java-Themen 4
A Variable Parameterinhalte an einen Query übergeben? Allgemeine Java-Themen 3
B static Variable / Unterklasse Allgemeine Java-Themen 2
J Was ist schneller? Neue Variable oder neuer Wert speziell int Allgemeine Java-Themen 3
S Innere Klasse: Zugriff auf äußere Variable Allgemeine Java-Themen 5
Semox Fehler - Zuweisung aus BufferedReader an Variable Allgemeine Java-Themen 3
Daniel_L RegEx - variable Vorkommen ersetzen? Allgemeine Java-Themen 5
P Unicode-Sequenz (u1234) in Variable speichern und ausgeben Allgemeine Java-Themen 6
G auf variable in anderer class zugreifen Allgemeine Java-Themen 2
G Variable global nutzen Allgemeine Java-Themen 4
V Variable vom Typ String zum Typen "Message" konve Allgemeine Java-Themen 2
M Try-Catch: wie wird Variable bei Exception initialisiert? Allgemeine Java-Themen 8
C ArrayList mit Variable im Namen Allgemeine Java-Themen 16
T JNI Referenz auf Variable in Java? Allgemeine Java-Themen 2
G Überprüfen, ob Variable ein Array ist? Allgemeine Java-Themen 5
R Member-Variable erzwingen Allgemeine Java-Themen 17
M Zugriff auf Objekt, Name in Variable Allgemeine Java-Themen 3
O Future Variable Allgemeine Java-Themen 4
M variable übergeben NICHT KOPIEREN Allgemeine Java-Themen 12
loadbrain KeyEvent mit Variable verknüpfen Allgemeine Java-Themen 4
M Prüfen ob Variable vorhanden / initalisiert ist Allgemeine Java-Themen 4
G Variable wird ignoriert - warum ? Allgemeine Java-Themen 36
L ctrl-z wird nicht in Variable gespeichert Allgemeine Java-Themen 4
G Variable Anzahl JTextfleder Allgemeine Java-Themen 3
R Wenn Variable = wat ist Allgemeine Java-Themen 7
H Zugriff auf statische Variable synchronisieren Allgemeine Java-Themen 4
H globale Variable wird nicht überall erkannt Allgemeine Java-Themen 3
G Zugriff auf Variable in abgeleiteter Klasse Allgemeine Java-Themen 6
R Eine Variable an eine Methode mit Array übergeben Allgemeine Java-Themen 7
O Environment Variable Setzen Allgemeine Java-Themen 2
G Referenz auf Variable! Allgemeine Java-Themen 3
G 1.5er String.format() -> variable Feldlaenge? Allgemeine Java-Themen 5

Ähnliche Java Themen

Neue Themen


Oben