我是Java新手,这是我今天需要提供的项目。 :(
我不确定如何引用我在另一个类中创建的数组对象 它可以工作,如果我做一个普通的数组,但不是与arraylist。 当我这样做时:
for(Integer k=0; k < run.accounts.length; k++) {
if((run.accounts[k][0].compareTo(id) == 0) &&
(run.accounts[k[1].compareTo(p)== 0))
它对我的帐号数组一无所知。
public class Users {
public List<List<String>> accounts = new ArrayList<List<String>>();
public Users(){
accounts.add(Arrays.asList("207860830", "0171", "active","admin"));
// [...] accounts.add(Arrays.asList(“110000200”,“1270”,“active”,“regular”));
}
public void DatosUsers() {
}
} // end class Users
//在不同的课程中
public class LOGINING {
public void login() {
Users run = new Users();
run.DatosUsers();
for (Integer k = 0; k < run.accounts.length; k++) {
if ((run.accounts[k][0].compareTo(id) == 0) && (run.accounts[k][1].compareTo(p) == 0)) {
auth = true;
System.out.println(auth);
break;
}
{
auth = false;
System.out.println(auth);
}
}
[ ... ]
答案 0 :(得分:1)
您可能正在使用List不支持的[x] [y]表示法。 要么使用
进行迭代List<String> list = new ArrayList<String>();
list.add("a");
list.add("b");
for (String s : list) {
System.out.println(s);
}
或使用索引,然后使用.get
List<String> list = new ArrayList<String>();
list.add("a");
list.add("b");
for (int i = 0; i < list.size(); i++) ) {
System.out.println(list.get(i));
}
如果这不是问题,那么你必须更具体(例如,列出未编译的确切行和编译错误)
供参考,请务必阅读: The List API Collections tutorial
答案 1 :(得分:0)
这是你如何遍历List。
for (List<String> list : run.accounts) {
if ((list.get(0).compareTo(id) == 0) && (list.get(0).compareTo(p) == 0)) {
auth = true;
System.out.println(auth);
break;
}else {
auth = false;
System.out.println(auth);
}
}