首页 分享 java:建立管理宠物护理服务系统

java:建立管理宠物护理服务系统

来源:萌宠菠菠乐园 时间:2024-12-13 18:43

我们将逐步构建一个宠物寄养服务管理系统。这个系统需要管理不同的动物及其各自的围栏。我们将采用面向对象的设计原则来确保代码的清晰性和可维护性。

阶段划分

为了更好地组织开发过程,我们可以将任务划分为几个阶段:

定义基本类:定义Animal类和Enclosure类。管理动物和围栏:创建一个PetCareService类来管理动物和围栏。添加功能:逐步添加更多的功能,如添加动物、移除动物、查找动物等。用户界面:创建一个简单的用户界面来与系统交互。 第一阶段:定义基本类 1. 定义Animal类

Animal类将包含动物的基本信息,如名称、种类、年龄等。

public class Animal {

private String name;

private String species;

private int age;

public Animal(String name, String species, int age) {

this.name = name;

this.species = species;

this.age = age;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public String getSpecies() {

return species;

}

public void setSpecies(String species) {

this.species = species;

}

public int getAge() {

return age;

}

public void setAge(int age) {

this.age = age;

}

@Override

public String toString() {

return "Animal{name='" + name + "', species='" + species + "', age=" + age + "}";

}

}

2. 定义Enclosure类

Enclosure类将包含围栏的基本信息,如编号、容量以及当前居住的动物。

import java.util.ArrayList;

import java.util.List;

public class Enclosure {

private int id;

private int capacity;

private List<Animal> animals;

public Enclosure(int id, int capacity) {

this.id = id;

this.capacity = capacity;

this.animals = new ArrayList<>();

}

public boolean addAnimal(Animal animal) {

if (animals.size() < capacity) {

animals.add(animal);

return true;

}

return false;

}

public boolean removeAnimal(Animal animal) {

return animals.remove(animal);

}

public int getId() {

return id;

}

public void setId(int id) {

this.id = id;

}

public int getCapacity() {

return capacity;

}

public void setCapacity(int capacity) {

this.capacity = capacity;

}

public List<Animal> getAnimals() {

return animals;

}

public void setAnimals(List<Animal> animals) {

this.animals = animals;

}

@Override

public String toString() {

return "Enclosure{id=" + id + ", capacity=" + capacity + ", animals=" + animals + "}";

}

}

第二阶段:管理动物和围栏 1. 定义PetCareService类

PetCareService类将管理所有的动物和围栏。

import java.util.ArrayList;

import java.util.HashMap;

import java.util.List;

import java.util.Map;

public class PetCareService {

private Map<Integer, Enclosure> enclosures;

private List<Animal> animals;

public PetCareService() {

this.enclosures = new HashMap<>();

this.animals = new ArrayList<>();

}

public void addEnclosure(Enclosure enclosure) {

enclosures.put(enclosure.getId(), enclosure);

}

public boolean addAnimalToEnclosure(Animal animal, int enclosureId) {

Enclosure enclosure = enclosures.get(enclosureId);

if (enclosure != null && enclosure.addAnimal(animal)) {

animals.add(animal);

return true;

}

return false;

}

public boolean removeAnimalFromEnclosure(Animal animal, int enclosureId) {

Enclosure enclosure = enclosures.get(enclosureId);

if (enclosure != null && enclosure.removeAnimal(animal)) {

animals.remove(animal);

return true;

}

return false;

}

public Animal findAnimalByName(String name) {

for (Animal animal : animals) {

if (animal.getName().equalsIgnoreCase(name)) {

return animal;

}

}

return null;

}

public List<Animal> getAllAnimals() {

return animals;

}

public Map<Integer, Enclosure> getAllEnclosures() {

return enclosures;

}

@Override

public String toString() {

return "PetCareService{enclosures=" + enclosures + ", animals=" + animals + "}";

}

}

第三阶段:添加功能 1. 添加更多功能

我们可以添加更多的功能,如列出特定围栏中的动物、检查围栏是否已满等。

import java.util.List;

public class PetCareService {

public List<Animal> listAnimalsInEnclosure(int enclosureId) {

Enclosure enclosure = enclosures.get(enclosureId);

if (enclosure != null) {

return enclosure.getAnimals();

}

return null;

}

public boolean isEnclosureFull(int enclosureId) {

Enclosure enclosure = enclosures.get(enclosureId);

if (enclosure != null) {

return enclosure.getAnimals().size() >= enclosure.getCapacity();

}

return false;

}

}

第四阶段:用户界面 1. 创建一个简单的用户界面

我们可以创建一个简单的命令行界面来与系统交互。

import java.util.Scanner;

public class PetCareSystem {

public static void main(String[] args) {

PetCareService service = new PetCareService();

Scanner scanner = new Scanner(System.in);

while (true) {

System.out.println("Pet Care Service Menu:");

System.out.println("1. Add Enclosure");

System.out.println("2. Add Animal to Enclosure");

System.out.println("3. Remove Animal from Enclosure");

System.out.println("4. Find Animal by Name");

System.out.println("5. List All Animals");

System.out.println("6. List Animals in Enclosure");

System.out.println("7. Check if Enclosure is Full");

System.out.println("8. Exit");

System.out.print("Choose an option: ");

int choice = scanner.nextInt();

scanner.nextLine();

switch (choice) {

case 1:

System.out.print("Enter Enclosure ID: ");

int id = scanner.nextInt();

scanner.nextLine();

System.out.print("Enter Enclosure Capacity: ");

int capacity = scanner.nextInt();

scanner.nextLine();

Enclosure enclosure = new Enclosure(id, capacity);

service.addEnclosure(enclosure);

System.out.println("Enclosure added successfully.");

break;

case 2:

System.out.print("Enter Animal Name: ");

String name = scanner.nextLine();

System.out.print("Enter Animal Species: ");

String species = scanner.nextLine();

System.out.print("Enter Animal Age: ");

int age = scanner.nextInt();

scanner.nextLine();

Animal animal = new Animal(name, species, age);

System.out.print("Enter Enclosure ID: ");

int enclosureId = scanner.nextInt();

scanner.nextLine();

if (service.addAnimalToEnclosure(animal, enclosureId)) {

System.out.println("Animal added to enclosure successfully.");

} else {

System.out.println("Failed to add animal to enclosure.");

}

break;

case 3:

System.out.print("Enter Animal Name: ");

String removeName = scanner.nextLine();

Animal removeAnimal = service.findAnimalByName(removeName);

if (removeAnimal != null) {

System.out.print("Enter Enclosure ID: ");

int removeEnclosureId = scanner.nextInt();

scanner.nextLine();

if (service.removeAnimalFromEnclosure(removeAnimal, removeEnclosureId)) {

System.out.println("Animal removed from enclosure successfully.");

} else {

System.out.println("Failed to remove animal from enclosure.");

}

} else {

System.out.println("Animal not found.");

}

break;

case 4:

System.out.print("Enter Animal Name: ");

String findName = scanner.nextLine();

Animal foundAnimal = service.findAnimalByName(findName);

if (foundAnimal != null) {

System.out.println("Animal found: " + foundAnimal);

} else {

System.out.println("Animal not found.");

}

break;

case 5:

List<Animal> allAnimals = service.getAllAnimals();

System.out.println("All Animals:");

for (Animal a : allAnimals) {

System.out.println(a);

}

break;

case 6:

System.out.print("Enter Enclosure ID: ");

int listEnclosureId = scanner.nextInt();

scanner.nextLine();

List<Animal> animalsInEnclosure = service.listAnimalsInEnclosure(listEnclosureId);

if (animalsInEnclosure != null) {

System.out.println("Animals in Enclosure " + listEnclosureId + ":");

for (Animal a : animalsInEnclosure) {

System.out.println(a);

}

} else {

System.out.println("Enclosure not found.");

}

break;

case 7:

System.out.print("Enter Enclosure ID: ");

int checkEnclosureId = scanner.nextInt();

scanner.nextLine();

if (service.isEnclosureFull(checkEnclosureId)) {

System.out.println("Enclosure " + checkEnclosureId + " is full.");

} else {

System.out.println("Enclosure " + checkEnclosureId + " is not full.");

}

break;

case 8:

System.out.println("Exiting...");

scanner.close();

return;

default:

System.out.println("Invalid option. Please try again.");

}

}

}

}

总结

以上代码实现了宠物寄养服务管理系统的初步功能,包括添加围栏、添加动物到围栏、移除动物、查找动物、列出所有动物、列出特定围栏中的动物以及检查围栏是否已满。通过命令行界面,用户可以与系统进行交互。

你可以根据需要进一步扩展和优化这个系统,例如添加更多的功能、改进用户界面或增强数据验证。

相关知识

java毕业设计社区宠物管理与推荐系统(Springboot+mysql+jdk1.8+maven3.39)
java计算机毕业设计宠物服务管理系统(开题+程序+论文)
java计算机毕业设计宠物医院管理系统(开题+程序+论文)
基于JAVA的宠物护理预定系统
java计算机毕业设计宠物猫管理系统(开题+程序+论文)
Java基于Java宠物寄存管理系统(开题+源码)
java计算机毕业设计springboot+vue宠物服务管理系统
基于Java Web的宠物管理系统
java计算机毕业设计宠物救助管理系统(开题+程序+论文)
[附源码]JAVA计算机毕业设计宠物社区管理系统(源码+开题)

网址: java:建立管理宠物护理服务系统 https://www.mcbbbk.com/newsview724376.html

所属分类:萌宠日常
上一篇: 固戍水质净化厂(二期)生物池起吊
下一篇: 如何进行家居宠物空间的设计?这样

推荐分享