java--宠物店

来源:互联网 发布:cocostudio 3.10 mac 编辑:程序博客网 时间:2024/04/30 02:32
 

//宠物接口——————Pet.java
interface Pet{
 public String getName();
 public String getColor();
 public int getAge();
}
//然后根据此接口定义出具体的子类。
//宠物猫——————Cat.java
class Cat implements Pet{
 private String name;
 private String color;
 private int age;
 public Cat(String name,String color,int age){
  this.name=name;
  this.color=color;
  this.age=age;
 }
 public String getName(){
  return this.name;
 }
 public String getColor(){
  return this.color;
 }
 public int getAge(){
  return this.age;
 }
 public void  setName(){
  this.name=name;
 }
 public void  setColor(){
  this.color=color;
  
 }
 public void setAge(){
  this.age= age;
 }
 
}


//宠物猫——————Cat.java
class Dog implements Pet{
 private String name;
 private String color;
 private int age;
 public Dog(String name,String color,int age){
  this.name=name;
  this.color=color;
  this.age=age;
 }
 public String getName(){
  return this.name;
 }
 public String getColor(){
  return this.color;
 }
 public int getAge(){
  return this.age;
 }
 public void  setName(){
  this.name=name;
 }
 public void  setColor(){
  this.color=color;
  
 }
 public void setAge(){
  this.age= age;
 }
 
}
//宠物商店——————PetShop.java
class PetShop{
 private Pet[] pets;
 private int foot;//数据保存位置
 public PetShop(int len){//构造方法开辟宠物数组的大小
  if(len>0){
   this.pets=new Pet[len];
  }
  else{
   this.pets=new Pet[1];
  }
 
 }
 public boolean add(Pet pet){
  if(this.foot<this.pets.length){
   this.pets[this.foot]=pet;
   this.foot++;
   return true;
  }
  else{
   return false;
  }
 }
 public Pet[] search(String keyWord){
  Pet p[]=null;
  int count=0;
  for(int i=0;i<this.pets.length;i++){
   if(this.pets[i]!=null){
    if(this.pets[i].getName().indexOf(keyWord)!=-1||this.pets[i].getColor().indexOf(keyWord)!=-1){
     count++;
    }
   }
  }
  p=new Pet[count];
  int f=0;
  for(int i=0;i<this.pets.length;i++){
   if(this.pets[i]!=null){
    if(this.pets[i].getName().indexOf(keyWord)!=-1||this.pets[i].getName().indexOf(keyWord)!=-1){
     p[f]=this.pets[i];
     f++;
    }
   }
  }
  return p;
 }
}

//测试宠物商店——————PetShopDemo.java

public class PetShopDemo {
 public static void main(String args[]){
  PetShop ps=new PetShop(5);
  ps.add(new Cat("白猫","白色的",2));
  ps.add(new Cat("黑猫","黑色的",3));
  ps.add(new Cat("花猫","花色的",3));
  ps.add(new Dog("拉布拉多","黄色的",3));
  ps.add(new Dog("金毛","金色的",3));
  //ps.add(new Dog("黄狗","黑色的",3));
  print(ps.search("黑"));
 }
 public static void print(Pet p[]){
  for(int i=0;i<=p.length;i++){
   if(p[i]!=null){
    System.out.println(p[i].getName()+","+p[i].getColor()+","+p[i].getAge());
   }
   
  }
 }

}

原创粉丝点击