Kriege Fehler "Exception in thread" beim Benutzen von SubStrings.

Stamp1t

Mitglied
Hey,
ich bin Java-Neuling und habe einfach ein wenig herumprobiert. Der Sinn des Programms stand bei dieser Übung also nicht im Vordergrund.
Ich wollte einfach, dass man seinen Namen eingeben kann und wenn dieser Name mehr als 6 Buchstaben hat, wird das Passwort auf die ersten 3 Anfangsbuchstaben gesetzt und wenn der Name weniger als 6 Buchstaben hat, auf 2 Anfangsbuchstaben. Die Fehlermeldung:

Code:
Exception in thread "main" java.lang.NullPointerException
    at BeispielStrings.pwc(BeispielStrings.java:14)
    at Main.main(Main.java:6)


Mein Code:
[CODE lang="java" title="Main Klasse"]public class Main {

public static void main(String[] args) {
BeispielStrings PhilippsPasswort = new BeispielStrings();
PhilippsPasswort.pwc("Philipp");
System.out.println(PhilippsPasswort.getPw());
}
}[/CODE]
[CODE lang="java" title="Main Klasse"]public class BeispielStrings {
String name;
int length;
String pw;

public String pwc(String name) {
this.name = name;
length = name.length();
if(length <= 6) {
pw = pw.substring(0, 3 );
} else {
pw = pw.substring(0, 4);
}
return pw;
}

public String getPw() {
return pw;
}
}[/CODE]
 
Der Fehler ist, dass pw bei pw.substring(...) noch nicht initialisiert und somit null ist.
Was du vielleicht möchtest ist pw = name.substring(...)?
 

Neue Themen


Zurück
Oben