gpt4 book ai didi

java - 通过属性值查找对象

转载 作者:行者123 更新时间:2023-12-02 10:32:04 24 4
gpt4 key购买 nike

我有两个类(class),房间(属于一栋大楼)和大楼(有n个房间)。 Building 类具有 List 类型的属性“rooms”,Room 类具有 Building 类型的属性“building”。 Room 和 Building 都是抽象类的后代。

我正在根据 csv 文件中的数据创建新房间。每个房间都有一个“building_code”列。我想找到一个具有相应属性值“code”的建筑物(该属性在抽象类中声明)将其添加到 rooms 的“building”属性中,同时将 room 添加到 Buldings 的“rooms”列表中。

由于我想在导入数据的类中使用此功能,以及另一个与建筑物和房间(CRUD 操作)一起使用的类,我是否应该在 Building 类中创建一个方法?使用以下代码,我在 For 循环线上收到“不兼容类型”异常:

    public Building findByCode(String code, List buildings) {
for (Building b : buildings) {
if (b.code.equals(code)) {
return b;
}
}
return null;
}

最佳答案

正如评论和答案中所述,您可以通过声明 List ( List ) 的类型来解决异常问题。但关于该函数的位置,我同意“Jason Armstrong”的想法,但您也可以拥有“Utils”类并将该函数声明为静态方法。然后在任何你想要的地方使用它。

public static Building findBuilding(String code, List<Building> buildings) {
for (Building b : buildings) {
if (b.code.equals(code)) {
return b;
}
}
return null;
}

关于java - 通过属性值查找对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53560368/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com