通过ID查找对象(Java)
我有一个类Person,每个Person对象都有唯一的Person id(int类型)。我还有一个静态方法isAlreadyStored(String name),它应该检查是否已经创建了一个同名的人。我无法通过为所有创建的Person对象创建列表来解决这个问题,因为我得到了错误“非静态变量不能从静态上下文引用”,但我不知道如何迭代所有Person对象以找到一个具有给定名称的对象。我该怎么做
你可以在下面搜索框中键入要查询的问题!
我有一个类Person,每个Person对象都有唯一的Person id(int类型)。我还有一个静态方法isAlreadyStored(String name),它应该检查是否已经创建了一个同名的人。我无法通过为所有创建的Person对象创建列表来解决这个问题,因为我得到了错误“非静态变量不能从静态上下文引用”,但我不知道如何迭代所有Person对象以找到一个具有给定名称的对象。我该怎么做
# 1 楼答案
错误非静态变量无法从静态上下文中引用表示您正试图从使用关键字
static
定义的方法访问未使用关键字static
定义的变量比如
未使用关键字
static
定义的变量被命名为实例变量,只能通过实例方法(未使用关键字static
定义的方法)访问# 2 楼答案
显然,为了解决您的问题,您需要为Person类创建所有实例的列表。您应该将其存储在静态变量中,然后对其进行搜索。比如:
然后你可以在列表中搜索如下内容: