-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathBuildingInfo.java
More file actions
41 lines (36 loc) · 1.4 KB
/
BuildingInfo.java
File metadata and controls
41 lines (36 loc) · 1.4 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
public class BuildingInfo extends Building {
private String description;
private String directions;
// Constructor
public BuildingInfo(String code, String name, String coordinates, String description, int floorCount, String directions) {
super(code, name, coordinates, floorCount);
this.description = description;
this.directions = directions;
}
// Getters
public String getDescription() {
return description;
}
public String getDirections() {
return directions;
}
// specific display method for BuildingInfo
@Override
public void displayInfo() {
System.out.println("\nBuilding Code: " + getCode());
System.out.println("Name: " + getName());
System.out.println("Coordinates: " + getCoordinates());
System.out.println("Description: " + description);
System.out.println("Floors: " + getFloorCount());
System.out.println("Directions: " + directions);
}
// Static method to find a building by code or name
public static BuildingInfo findBuilding(BuildingInfo[] buildings, String query) {
for (BuildingInfo b : buildings) { // search logic
if (b.getCode().equalsIgnoreCase(query) || b.getName().toLowerCase().contains(query.toLowerCase())) {
return b;
}
}
return null;
}
}