Java景区管理增删改查模块

来源:互联网 发布:严厉打击网络犯罪 编辑:程序博客网 时间:2024/06/03 02:07

PriceAsc.java

package sightManager;

import java.util.*;

public class PriceAsc implements Comparator<Scenic> {
@Override
public int compare(Scenic o1, Scenic o2) {
  // TODO Auto-generated method stub
  int res=0;
  if(o1.getPrice()>o2.getPrice()){
   res =1;
  }
  else if(o1.getPrice()<o2.getPrice()){
   res=-1;
  }
  return res;
}
}

Scenic.java

package sightManager;
/**
* 景点类
* @author 雨
*
*/
public class Scenic {
private String name;
private double price;
private int start;
public String getName() {
  return name;
}
public void setName(String name) {
  this.name = name;
}
public double getPrice() {
  return price;
}
public void setPrice(double price) {
  this.price = price;
}
@Override
public String toString() {
  return "景点名称:" + name + "景点价格:" + price + "景点星级:" + start;
}
public Scenic() {
  super();
  // TODO Auto-generated constructor stub
}
public Scenic(String name, double price, int start) {
  super();
  this.name = name;
  this.price = price;
  this.start = start;
}
public int getStart() {
  return start;
}
public void setStart(int start) {
  this.start = start;
}
}

ScenicManager.java
package sightManager;
import java.util.*;
/**
* 景点管理类
* @author 雨
*
*/
public class ScenicManager {
private String ScenicName;
private ArrayList<Scenic> arrayList;
public String getScenicName() {
  return ScenicName;
}
public void setScenicName(String scenicName) {
  ScenicName = scenicName;
}
public ArrayList<Scenic> getArrayList() {
  return arrayList;
}
public void setArrayList(ArrayList<Scenic> arrayList) {
  this.arrayList = arrayList;
}
public ScenicManager(String scenicName, ArrayList<Scenic> arrayList) {
  super();
  ScenicName = scenicName;
  this.arrayList = arrayList;
}
public ScenicManager() {
  super();
  arrayList=new ArrayList<Scenic>();
  // TODO Auto-generated constructor stub
}
public void start(){
  //初始化;
  Scenic scanic1=new Scenic("岳麓山",40,5);
  Scenic scanic2=new Scenic("白沙井",5,3);
  Scenic scanic3=new Scenic("橘子洲",30,4);
  Scenic scanic4=new Scenic("植物园",20,2);
  arrayList.add(scanic1);
  arrayList.add(scanic2);
  arrayList.add(scanic3);
  arrayList.add(scanic4);
}
//添加景区;
public boolean add(Scenic scenic){
  boolean flag=false;//差重;
  if(!arrayList.contains(scenic)){
   flag=true;
   arrayList.add(scenic);
  }
  return flag;
}
//修改景区
public void xiugai(String name){
  for(int i=0;i<arrayList.size();i++){
   if(name.equals(arrayList.get(i).getName())){
    Scanner scanner = new Scanner(System.in);
    System.out.println("请输入修改后的景区名称");
    String name2 = scanner.next();
    arrayList.get(i).setName(name2);
    System.out.println("请输入修改后的景区价格");
    double price = scanner.nextDouble();
    arrayList.get(i).setPrice(price);
    System.out.println("请输入修改后的景区的等级");
    int start = scanner.nextInt();
    arrayList.get(i).setStart(start);
    System.out.println("修改成功");
   }
  }
 
}

//删除方法
public void delete(String name){
for(int i=0;i<arrayList.size();i++){
  if(name.equals(arrayList.get(i).getName())){
  arrayList.remove(arrayList.get(i));
  System.out.println("删除成功!");
  }
  else{
   System.out.println("删除失败!");
  }
 
}
}
//按名称查询
public void nameInq(String String){
  for(int i=0;i<arrayList.size();i++){
   if(arrayList.get(i).getName().trim().equals(String))
    System.out.println(arrayList.get(i).toString());
  }
}
//按价格查询
public void priceInq(Double a){
   for(int i=0;i<arrayList.size();i++){
    if(arrayList.get(i).getPrice()==a)
     System.out.println(arrayList.get(i).toString());
   }
  }
//按等级查询
public void startInq(int b){
   for(int i=0;i<arrayList.size();i++){
    if(arrayList.get(i).getStart()==b)
     System.out.println(arrayList.get(i).toString());
   }
  }
public void priceSort(){
//价格排序
  Collections.sort(arrayList,new PriceAsc());
  for(Scenic v:arrayList){
   System.out.println(v);
  }
}
public void startSort(){
  //星级排序
  Collections.sort(arrayList,new StartAsc());
  for(Scenic v:arrayList){
   System.out.println(v);
  }
}
public void showAll(){
  for (Scenic s: arrayList) {
   System.out.println(s);
  }
}

}

Start.java

package sightManager;
/**
* 主程序
*/
import java.util.Scanner;
import sightManager.Scenic;
import sightManager.ScenicManager;

public class Start {

/**
  * 初始化菜单
  */
public void initMenu() {
  boolean flag = true;
  Scanner scanner = new Scanner(System.in);
  int mark = 0;//选择项1-11;
  ScenicManager scenicManager = null;
  boolean init = false;// 是否初始化;

  while (flag) {
   System.out.println("欢迎使用景区管理模块");
   System.out.println("1 初始化");
   System.out.println("2 添加景区");
   System.out.println("3 修改景区");
   System.out.println("4 删除景区");
   System.out.println("5 根据景区名称查找景区对象 ");
   System.out.println("6 根据景区价格查找景区对象");
   System.out.println("7 根据景区等级查找景区对象");
   System.out.println("8 价格排序(升序)");
   System.out.println("9 等级排序(升序)");
   System.out.println("10 显示所有景区信息");
   System.out.println("11 退出");
   mark = scanner.nextInt();
   switch (mark) {
   case 1:
    //初始化景区
    scenicManager = new ScenicManager();
    System.out.println("请初始化景区管理局名称");
    String name = scanner.next();
    scenicManager.setScenicName(name);
    System.out.println("初始化完成");
    init = true;
    scenicManager.start();
    scenicManager.showAll();
    break;
   
       case 2:
    //添加景区
    try {
     checkInit(init);
     System.out.println("请输入即将添加的景区名称");
     String name2 = scanner.next();
     System.out.println("请输入即将添加的景区价格");
     double price = scanner.nextDouble();
     System.out.println("请输入即将添加的景区等级");
     int start = scanner.nextInt();
     Scenic scenic=new Scenic(name2, price, start);
     //调用管理类的方法
     if(scenicManager.add(scenic))
     {
      System.out.println("景区添加成功");
     }
    
     else{
      System.out.println("景区添加失败");
     }
    

    }
    catch (Exception e) {
     // TODO Auto-generated catch block
     System.out.println(e.getMessage()); 
     System.out.println("出现异常了,你个2货");
    }
    break;
   case 3:
    //修改景区
    try {
     checkInit(init);
     System.out.println("请输入景区名称");
     String name3 = scanner.next();
     scenicManager.xiugai(name3); 
    } catch (Exception e) {
     System.out.println(e.getMessage());
     System.out.println("出现异常了,你个2货");
    }

    break;
   case 4:
    //删除景区
    try {
     checkInit(init);
     System.out.println("请输入景区名称");
     String name4 = scanner.next();
     scenicManager.delete(name4);
    }
    catch (Exception e) {
     // TODO 自动生成的 catch 块
     System.out.println(e.getMessage());
     System.out.println("出现异常了,你个2货");
    }


    break;
   case 5:
    //根据景区名称查找景区对象
    try {
     checkInit(init);
     System.out.println("请输入景区名称");
     String name5 = scanner.next();
     scenicManager.nameInq(name5);
    } catch (Exception e) {
     // TODO 自动生成的 catch 块
     System.out.println(e.getMessage());
    }


    break;
   case 6:
    //根据景区价格查找景区对象
    try {
     checkInit(init);
     System.out.println("请输入景区价格");
     Double name6 = scanner.nextDouble();
     scenicManager.priceInq(name6);
    } catch (Exception e) {
     System.out.println(e.getMessage());
    }


    break;
   case 7:
    //根据景区等级查找景区对象
    try {
     checkInit(init);
     System.out.println("请输入景区等级");
     int name7 = scanner.nextInt();
     scenicManager.startInq(name7);
    } catch (Exception e) {
   
     System.out.println(e.getMessage());
    }
    break;
   case 8:
    //价格排序
    try {
     checkInit(init);
     System.out.println("价格升序");
     scenicManager.priceSort();
    } catch (Exception e) {
     // TODO 自动生成的 catch 块
     System.out.println(e.getMessage());
    }


    break;
   case 9:
    //星级排序
    try {
     checkInit(init);
     System.out.println("等级升序");
     scenicManager.startSort();
    } catch (Exception e) {
     // TODO 自动生成的 catch 块
     System.out.println(e.getMessage());
    }
    break;
   case 10:
    //显示所有景区信息
    try {
     checkInit(init);
     scenicManager.showAll();
    } catch (Exception e) {
     // TODO 自动生成的 catch 块
     System.out.println(e.getMessage());
    }
    break;
   case 11:
    //退出程序
    flag = false;

    break;

   default:
    break;
   }
  }
  System.out.println("程序结束了");

}

/**
  * 检验是否初始化成功
  * @param init
  * @throws Exception
  */

  public void checkInit(boolean init) throws Exception {

   if (!init) {
    // 手工抛出异常
    throw new Exception("你没有初始化,请选择");
   }
  }
  public void checkSort(boolean sort) throws Exception {

   if (!sort) {
    // 手工抛出异常
    throw new Exception("你没有初始化,请选择");
   }
  }


  public static void main(String[] args) {
   // TODO Auto-generated method stub
   // 初始化
   Start start = null;
   try {
    start = new Start();
    // 实例名 使用范围 {}

    start.initMenu();
   } catch (Exception e) {
    // TODO Auto-generated catch block
    System.out.println("选择菜单错误....");
    start.initMenu();
   }

  }
}

StartAsc.java


package sightManager;

import java.util.Comparator;

/***
* 等级降序类
* @author
*
*/
public class StartAsc implements Comparator<Scenic>{

@Override
public int compare(Scenic o1, Scenic o2) {
  // TODO Auto-generated method stub
  int res=0;
  if(o1.getStart()>o2.getStart()){
   res =1;
  }
  else if(o1.getStart()<o2.getStart()){
   res=-1;
  }
  return res;
}

}

原创粉丝点击