Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
Wenn man einen Konstruktor schreibt, kann man ja Attributwerte vom benutzer eingeben lassen:
Java:
public class Abc {
int x
public Abc (int x) {
}
}
Kann man das auch mit Methoden so machen ... mein problem ist nämlich, dass ich in einer while schleife werte sooft eingeben zu lassen bis while erfüllt ist ...
Verstehe nicht so ganz, was du willst. Dein Konstruktor Beispiel macht ja nur sinn, wenn du noch this.x = x; reinschreibst. Genau das gleiche kannst du natürlich auch bei jeder beliebigen Methode machen.
also meine idee war dass ich wert1 festlege und dann lasse ich in einer while-schleife bis wert1 == beispiel einen attributwert für wert1 eingeben bis eben diese bedingung erfüllt ist ... sollte eine einfach passwort abfrage werden
this ist eine Referenz auf das Objekt selber. Wenn du in deinem Konstruktor this.x verwendest, meinst du das x, das in der Klasse liegt und nicht das x, das per Argument übergeben wurde.
Wo genau kommst du denn nicht weiter? Mit der while Schleife oder mit dem eingeben von Passwörtern oder was anderem?
Also als aller erstes würde ich mal sagen solltest du dich daran gewöhnen Setter und Getter reinzubauen, anstatt die Variablen auf
Code:
Public
zu setzen.
So wäre es auf jedenfall möglich:
Java:
public class Login {
//Attribute
private int loginzahl;
private int loginkey;
private boolean x = false;
// Methoden
public boolean getX() {
return x;
}
public void loginPruefen (int loginzahl, int loginkey) {
if (loginzahl == 123 && loginkey == 987) {
System.out.println ("Zugang gewährt");
x = true;
}
else {
System.out.println ("Zugang verwehrt, try again!");
}
}
}
Und die Main Klasse:
Java:
public class LoginF {
public static void main(String[] args) {
Login user = new Login ();
while (user.getX() == false) {
user.loginPruefen(123, 987);
}
}
}
}
Willste jedoch noch, dass man die zwei Zahlen eingibt, so könnte man einfach in der Main Methode noch nen
Code:
Scanner
aus der
Code:
java.util.Scanner
-Klasse implementieren:
Java:
import java.util.Scanner;
public class LoginF {
public static void main(String[] args) {
Login user = new Login ();
Scanner input = new Scanner(System.in);
System.out.println("Geben Sie die Anmeldenummer ein: ");
int loginnummer = input.nextInt();
System.out.println("Geben Sie den Anmeldekey ein: ");
int key = input.nextInt();
while (user.getX() == false) {
user.loginPruefen(loginnummer, key);
}
}