他のクラスからArrayListにアクセスするにはどのようにしたらよいか分かりません。何百もの類似したトピックを読んでいますが、何をしようとしているのか正確には分かりません。私はsetLoginChoiceの下にあります。これは、ログインクラスからArrayListを読み取る必要があります。また、ArrayListを動的に作成しようとしているので、ユーザーの新しいエントリで更新できます。私はなぜArrayListを読んでいるときに私にnull値を与えているのだろうと思っています。別のクラスからArrayListにアクセスする
EDITは、たぶん私はダムですが、私は理解してから、私が作成したArrayListには(引数の数が同じ)顧客のメソッド右?に基づいています。だから私は "apostcode"(配列から各リストから1つの要素)を読み取ろうとしているとき、私はnull値を与えるメソッド "顧客"から実際に "apostcode"を読んでいる。それを行う正しい方法は何ですか:)
public class Customer {
private static String customerId;
private static String firstName, lastName;
private static String address, dateOfBirth, telephoneNumber, cprNumber;
private static String userName, password, logInCredentials;
private static int postCode;
String auserName;
String apassword;
String apostCode;
String adateOfBirth ;
String afirstName ;
String alastName ;
String aaddress ;
public Customer (String afirstName,String aaddress ,String alastName, int apostCode, String acprNumber, String atelephoneNumber, String adateOfBirth , String auserName, String apassword)
{
adateOfBirth = dateOfBirth;
afirstName = firstName;
alastName = lastName;
apostCode = postCode;
aaddress = address;
acprNumber = cprNumber;
atelephoneNumber = telephoneNumber;
apassword = password;
auserName = userName;
}
public static boolean setLoginChoice (int choiceForLogIn) {
ArrayList <Customer> myUsers = (new Login()).login();
Scanner input = new Scanner(System.in);
System.out.println("Enter your username: ");
inputUsername = input.nextLine();
System.out.println("Enter your password: ");
inputPassword = input.nextLine();
System.out.println("before");
for(int i = 0; i < myUsers.size(); i++){
System.out.println("loopfor");
System.out.println(myUsers.get(i).apostCode);
/*if(myUsers.get(i).auserName.compareTo(getInputuserName()) == 0 && myUsers.get(i).apassword.compareTo(getInputPassword()) == 0)
{
System.out.println("Welcome");
return true;
}else {
System.out.println("insideloop");
}*/
}
System.out.println("after");
return false;
}
public class Login{
ArrayList<Customer> myUsers;
public ArrayList<Customer> login() {
// TODO Auto-generated method stub
ArrayList<Customer> myUsers = new ArrayList<Customer>();
Customer d = new Customer(null, null, null, 0, null, null, null, null, null);
myUsers = new ArrayList<Customer>();
myUsers.add(new Customer("User1", "bane", "User1nick", 7444, "111116-4421", "55555555", "11/05/1993", "User3", "Joe"));
myUsers.add(new Customer("User2", "bane", "User2nick", 7444, "111116-4021", "55555555", "11/05/1993", "User3", "Stefan2"));
myUsers.add(new Customer("User3", "bane", "User3nick", 7444, "111116-4021", "55555555", "11/05/1993", "User3", "Adi2"));
myUsers.add(new Customer(d.getfirstName(), d.getAddress(), d.getlastName(), d.getPostCode(), d.getCprNumber(), d.getTelephoneNumber(), d.getdateOfBirth(), d.getUsername(), d.getPassword()));;
return myUsers;
}
}
お客様は、なぜログインを延長しますか? – WilomGfx
大丈夫、私はいくつかの変更を加え、私はそれを削除することを忘れて、私は数十の方法を試してみました..私は私の投稿を編集 – Stefan
は、変数です。 'ausername'プライベート? –