Dan*_*l S -2 java arrays class list object
有这个:
static class Girl{
public String age;
public String name;
public String id;
}
static Girl[] girl;
Run Code Online (Sandbox Code Playgroud)
然后我无法在我的主要功能中执行此操作:
ResultSet r = s.executeQuery("select count(*) from children");
r.next();
girl_count=r.getInt(1);
girl = new Girl[girl_count];
r = s.executeQuery("select * from children");
int i = 0;
while(r.next()){
i = r.getString("id");
if(girl[i]==null)girl[i]=new Girl();
girl[i].age=r.getString("age");
girl[i].name=r.getString("name");
girl[i].id=r.getString("id");
}
Run Code Online (Sandbox Code Playgroud)
上面的代码不起作用,我想要实现的是:
System.out.println(girl[3]);
Run Code Online (Sandbox Code Playgroud)
尤其是这一行:
girl = new Girl[girl_count];
Run Code Online (Sandbox Code Playgroud)
任何人都可以帮我纠正这段代码吗? - 或者找出我在这里失踪的东西?
Java最佳实践表明,您的类名应该以大写字母开头,并且您的变量/字段名称应该是小写的.在这种情况下,我相信你的代码无法编译,因为你有一个名为'girl'的类和一个同名的变量.
将您的班级改为大写字母:
static class Girl{ ...}
Run Code Online (Sandbox Code Playgroud)
从那里开始 错误消息也将更容易理解.