1.定义公司成员作为父类

package tEAM;public class Person {private String ID;private String age;private String wages;private String position;private String state;private String bonus;private String device;private String name;private  String doc;public String getDoc() {return doc;}public void setDoc(String doc) {this.doc = doc;}public String getName() {return name;}public void setName(String name) {this.name = name;}public String getAge() {return age;}public String getBonus() {return bonus;}public String getDevice() {return device;}public String getID() {return ID;}public String getPosition() {return position;}public String getState() {return state;}public String getWages() {return wages;}public void setAge(String age) {this.age = age;}public void setBonus(String bonus) {this.bonus = bonus;}public void setDevice(String device) {this.device = device;}public void setID(String ID) {this.ID = ID;}public void setPosition(String position) {this.position = position;}public void setState(String state) {this.state = state;}public void setWages(String wages) {this.wages = wages;}public void show(){System.out.print(this.ID+"   " );System.out.print(this.name+"   " );System.out.print(this.position+"   " );System.out.print(this.age+"   " );System.out.print(this.wages+"   " );System.out.print(this.state+"   " );System.out.print(this.bonus+"   " );System.out.print(this.doc+"   " );System.out.println(this.device+"   " );}
}

2.定义团队成员作为子类

package tEAM;public class s_team extends Person{private String TID;public String getTID() {return TID;}public void setTID(String TID) {this.TID = TID;}public void show(){System.out.print(getTID() +"/"+getID()+"     " );System.out.print(getName()+"   " );System.out.print(getPosition()+"   " );System.out.print(getAge()+"   " );System.out.print(getWages()+"   " );System.out.print(getState()+"   " );System.out.print(getBonus()+"   " );System.out.print(getDoc()+"   " );System.out.println(getDevice()+"   " );}
}

3.主程序

package tEAM;import java.util.ArrayList;
import java.util.Scanner;public class run {public static void main(String[] args) {ArrayList<Person>  array=creat();ArrayList<s_team>  array_team=new ArrayList<>();ArrayList <s_team> array_all=new ArrayList<>();flash(array);int lable=0;while(lable==0){lable=0;shower(array) ;System.out.println("---------------------------------------------------------------------");System.out.println("1-团队列表 2-添加团队成员 3-删除团队成员 4-退出 请选择(1-4)" );Scanner s =new Scanner(System.in);int s1=s.nextInt();if((s1<0)||(s1>4)){System.out.println("输入有误,请重新输入1-4之间的整数");}else{switch(s1){case 1:int label1=list(array_team);if(label1 ==0){lable=0;}else{lable=1;}case 2:int label2=1;while(label2==1){int label_2=add(array_team,array,array_all);System.out.println("是否继续添加(Y/N)?");if (label_2==1){label2=1;}Scanner k=new Scanner(System.in);String chos=k.nextLine() ;if(chos.equals("y")){label2 =1;}else {lable=0;label2 =0;}}break;case 3:int label3=1;if (array_team .size()==0){System.out.println("暂无成员,请先添加");System.out.println("请按回车键继续");Scanner k=new Scanner(System.in);String chos=k.nextLine() ;}else{while(label3 ==1){team_list(array_team);System.out.println("请输入要删除的成员TID");Scanner k=new Scanner(System.in);String chos=k.nextLine() ;label3 =del(array ,array_team  ,array_all ,chos);if(label3 ==0){System.out.println("删除成功!");int size=array_team.size();if (size==0){System.out.println("成员列表已经空啦,请添加后删除");System.out.println("按回车键继续");Scanner A=new Scanner(System.in) ;String l=A.nextLine() ;break;}}System.out.println("是否继续删除(Y/N)");String o=k.nextLine() ;if(o.equals("y") ){label3 =1;}else{label3 =0;}}}break;case 4:System .exit(0);}}}}public static void set(Person p,String a,String b,String c,String d,String e,String f,String g,String h,String i){p.setID(a);p.setName(b);p.setAge(c);p.setWages(d);p.setPosition(e);p.setState(f);p.setBonus(g);p.setDoc(h);p.setDevice(i);}public static void prin(){System.out.print("ID"+"   " );System.out.print("姓名"+"     " );System.out.print("职位"+"    " );System.out.print("年龄"+"  " );System.out.print("工资"+"       " );System.out.print("状态"+"   " );System.out.print("奖金"+"       " );System.out.print("股票"+"   " );System.out.println("领用设备"+"   " );}public static void flash(ArrayList <Person> array){System.out.println("---------------------------开发者团队调度软件----------------------------");prin();set(array.get(0),"1 ","马云","22","3000.0","       ","","","","");array.get(0).show();set(array.get(1),"2 ","马化腾","32","18000.0","架构师","FREE","15000.0","2000","联想T4");array.get(1).show();set(array.get(2),"3 ","李彦宏","23","7000.0 ","程序员","FREE","     ","   ","   戴尔");array.get(2).show();set(array.get(3),"4 ","刘强东","24","7500.0 ","程序员","FREE","     ","   ","   戴尔");array.get(3).show();set(array.get(4),"5 ","雷军  ","28","10000.0","设计师","FREE","5000.0 ","    ","激光佳能");array.get(4).show();set(array.get(5),"6 ","任志强","22","6800.0 ","程序员","FREE","     ","   ","   华硕");array.get(5).show();set(array.get(6),"7 ","柳传志","28","10800.0","设计师","FREE","5200.0 ","    ","华硕");array.get(6).show();set(array.get(7),"8 ","杨元庆","30","19800.0","架构师","FREE","15000.0","2500","爱普生");array.get(7).show();set(array.get(8),"9 ","史玉柱","26","9800.0 ","设计师","FREE","5500.0 ","    ","惠普m6");array.get(8).show();set(array.get(9),"10","丁磊  ","21","6600.0 ","程序员","FREE","     ","   ","   戴尔");array.get(9).show();set(array.get(10),"11","张朝阳","25","7100.0 ","程序员","FREE","     ","   ","   华硕");array.get(10).show();set(array.get(11),"12","杨致远","27","9600.0 ","设计师","FREE","4800.0 ","    ","惠普m6");array.get(11).show();System.out.println("---------------------------------------------------------------------");System.out.println("1-团队列表 2-添加团队成员 3-删除团队成员 4-退出 请选择(1-4)" );}public static ArrayList<Person> creat(){   ArrayList<Person> array=new ArrayList<>();for(int i=0;i<12;i++){Person p=new Person();array.add(p);}return array;}public  static int list(ArrayList<s_team> sts){int size=sts.size();int m=0;if(size==0){System.out.println("暂无团队成员,请先添加后再查看");System.out.println("请按回车键继续");Scanner a=new Scanner(System.in);String l=a.nextLine();return m;}else{System.out.println("---------------------------团队成员列表----------------------------");System.out.print("TID/ID" +"   ");System.out.print("姓名"+"     " );System.out.print("职位"+"    " );System.out.print("年龄"+"  " );System.out.print("工资"+"       " );System.out.print("状态"+"   " );System.out.print("奖金"+"       " );System.out.print("股票"+"   " );System.out.println("领用设备"+"   " );for(int i=0;i<size;i++){sts.get(i).show(); }return 1;}}public static int add(ArrayList<s_team> sts,ArrayList<Person> sp,ArrayList <s_team> array_all){System.out.println("---------------------------添加成员----------------------------");System.out.println("请输入要添加成员的ID");Scanner s=new Scanner(System.in);int id=s.nextInt();id=id-1;if((id>=0)&&(id<12)){ int a=chat(sp,sts,id);if (a==0){add_method(sts,sp,array_all ,id) ;return 0;}else {return 1;}}else{System.out.println("id越界,请重新添加");return 1;}}public static void add_method(ArrayList<s_team> sts,ArrayList<Person> sp,ArrayList <s_team> array_all,int id){Person a=sp.get(id);s_team b=new s_team();b.setAge(a.getAge());b.setName(a.getName());b.setBonus(a.getBonus());b.setDevice(a.getDevice());b.setDoc(a.getDoc());b.setPosition(a.getPosition());b.setState("BUSY");b.setWages(a.getWages());b.setID(a.getID());sts.add(b);array_all .add(b);String TID;TID=String .valueOf(array_all.size());b.setTID(TID);sp.get(id).setState("BUSY") ;shower(sp);team_list(sts);System.out.println("添加成功!");}public static  int chat(ArrayList<Person> sp,ArrayList<s_team> sts,int id){       int a=0;int b=0;int c=0;if(sp.get(id).getState().equals("BUSY")){for(int i=0;i<sts.size();i++){if (sts.get(i).getID() .equals(sp.get(id).getID())){System.out.println("该成员已在本团队中,请重新选择");a=1;}if(!(sts.get(i).getID().equals(sp.get(id).getID()))){System.out.println("该成员已经在其他开发团队中,请重新选择");a=1;}}}if((!sp.get(id).getPosition().equals("程序员"))&&(!sp.get(id).getPosition().equals("架构师"))&&(!sp.get(id).getPosition().equals("设计师"))){System.out.println("非开发人员,请重新选择");a=1;}if((sp.get(id).getState().equals("REST"))){System.out.println("该成员正在休假,请重新选择");a=1;}switch (sp.get(id).getPosition() ){case "架构师":for(int i=0;i<sts.size();i++){if (sts.get(i).getPosition() .equals("架构师")){if(sts.get(i).getPosition().equals(sp.get(id).getPosition())){System.out.println("该成员已在本团队中,请重新选择");a=1;}else{System.out.println("团队中架构师已满,请重新选择");a=1;}}}case "设计师":for(int i=0;i<sts.size();i++){if (sts.get(i).getPosition() .equals("设计师")){  b++;if(b>1){System.out.println("团队中设计师已满,请重新选择");a=1;}}}case "程序员":for(int i=0;i<sts.size();i++){if (sts.get(i).getPosition() .equals("程序员")){  c++;if(c>2){System.out.println("团队中程序员已满,请重新选择");a=1;}}}}return a;}public static ArrayList<Person> change(ArrayList<Person> a,ArrayList<s_team> b){if(b.size()>0) {for(int i=0;i<a.size();i++){for (int j = 0; j < b.size(); j++) {if (a.get(i).getID().equals(b.get(j).getID())) {a.set(i, a.get(i)).setState("BUSY");}}}}return a; }
public static  void shower(ArrayList<Person> p)
{System.out.println("---------------------------开发者团队调度软件----------------------------");prin();for(int i=0;i<p.size();i++){p.get(i).show();}
}
public static int del (ArrayList<Person> a,ArrayList<s_team> b,ArrayList <s_team> c,String TID){int tID=Integer.parseInt(TID)-1;if(tID>b.size()-1 ){System.out.println("请输入TID在1到"+(b.size()-1)+"的整数" );return 1;}else{String ID=b.get(tID).getID();b.remove(tID) ;for (int i=0;i<a.size() ;i++){if(a.get(i).getID() .equals(ID) ){a.get(i).setState("FREE");}}team_list(b) ;return 0; }}
public static void team_list(ArrayList<s_team> sts)
{ System.out.println("---------------------------团队成员列表----------------------------");System.out.print("TID/ID" +"   ");System.out.print("姓名"+"     " );System.out.print("职位"+"    " );System.out.print("年龄"+"  " );System.out.print("工资"+"       " );System.out.print("状态"+"   " );System.out.print("奖金"+"       " );System.out.print("股票"+"   " );System.out.println("领用设备"+"   " );for(int p=0;p<sts.size() ;p++){sts.get(p).show();}}}

学习java第四天,自己做的尚硅谷项目三开发人员调度系统,代码很丑陋,等后面有时间再优化一下。相关推荐

  1. Java基础学习:尚硅谷项目三 开发团队调度软件

    Java基础学习:尚硅谷项目三 开发团队调度软件 一.软件功能与结构设计 1. 软件功能 该软件实现以下功能: 软件启动时,根据给定的数据创建公司部分成员列表(数组) 根据菜单提示,基于现有的公司成员 ...

  2. Java学习笔记 | 尚硅谷项目三详解

    该笔记基于B站视频:尚硅谷Java入门视频教程 目录 1,目标 2,需求说明 2.1,功能实现 2.1,菜单显示 2.2,添加功能 2.3,删除功能 2.3,查看团队成员 3,软件设计结构 4,具体实 ...

  3. 用java简单写一个信息管理系统(尚硅谷项目二)

    1.项目要求 模拟实现基于文本界面的<客户信息管理软件>. 该软件能够实现对客户对象的插入.修改和删除(用数组实现),并能够打印客户明细表 2.将项目抽象为几个类 我们可以先将项目抽离为几 ...

  4. java尚硅谷 项目三《开发团队调度项目》最细致流程、总结

    目录 1.目标 2.项目细节 2.1功能 2.2主界面显示 2.3功能展示 2.3.1团队列表 2.3.2添加团队成员 2.3.3删除团队成员 2.3.4退出 3.项目包和类的说明,软件设计结构 4. ...

  5. 【NodeJs-5天学习】第四天存储篇③ ——基于物联网的WiFi自动打卡考勤系统,升级存储为mysql,提醒功能改为QQ

    [NodeJs-5天学习]第四天存储篇③ --基于物联网的WiFi自动打卡考勤系统,升级存储为mysql,提醒功能改为QQ 1. 前言 2. 服务器代码 2.1 配置MySQL服务器 2.2 Node ...

  6. 【物联网服务NodeJs-5天学习】第四天存储篇③ ——基于物联网的WiFi自动打卡考勤系统,升级存储为mysql,提醒功能改为QQ

    [NodeJs-5天学习]第四天存储篇③ --基于物联网的WiFi自动打卡考勤系统,升级存储为mysql,提醒功能改为QQ 1. 前言 2. 服务器代码 2.1 配置MySQL服务器 2.2 Node ...

  7. YOLOv5初探(看来这个YOLO5做得还不是很完善,过段时间再试试??)

    文章目录 YOLOv5简介 官方github链接 如何安装以及训练自己的数据集 安装 训练 1.创建Dataset.yaml文件 2.创建存放图片和标注的目录 3.创建标注labels 4.选择预训练 ...

  8. elixir开发的项目_我对Elixir的介绍:学习另一种编程语言如何使您成为更好的开发人员...

    elixir开发的项目 by Nikolas O'Donnell 由Nikolas O'Donnell 我对Elixir的介绍:学习另一种编程语言如何使您成为更好的开发人员 (My intro to ...

  9. java jsp开发的电子商务系统代码下载

    原文:java jsp开发的电子商务系统代码下载 源代码下载地址:http://www.zuidaima.com/share/1612487193594880.htm java电子商务系统(毕业论文+ ...

最新文章

  1. 【robotframework】robotframework基本使用
  2. springboot 的两种配置文件语法||配置文件占位符||@Value 读取配置文件及验证处理
  3. 对象存储使用案例_杉岩MOS海量对象存储中标福建移动
  4. vrml场景实例代码_高并发的中断下半部tasklet实例解析
  5. 【排错】net::ERR_ABORTED 404
  6. python计算在月球的体重程序_# Python程序语言设计基础(第二版)程序练习题
  7. 与gps优缺点_浅谈用于洒水车上的液位传感器和GPS模块
  8. 使用caffemodel模型(由mnist训练)测试单张手写数字样本
  9. python元组索引_Python—范围元组中的元素索引
  10. Python复制数据
  11. ENVI标准库下光谱分析
  12. ASP.NET基于donetCHARTING的自动报表
  13. php 匹配标签内的文本内容 preg_match_all strip_tags
  14. Linux 安装flash
  15. amos调节变量怎么画_AMOS结构方程教程,SPSS调节效应分析操作与结果的详细解读...
  16. ILSVRC2016
  17. 3306π金牌讲师,甜橙金融(翼支付)高级总监张小虎专访
  18. java 获取当前第几周_java 计算当前日期是今年的第几周 和 该周的开始日期及结束日期...
  19. python docx 合并文档 图片_Python合并word文档制作电子书
  20. python编程从入门到实践练习15-3:分子运动

热门文章

  1. 不懂英文能靠建站卖站达到月入上万?
  2. PE新物种:从投基金到投管理机构,详解GP Stake-投资占股模式
  3. Mathematica三维画图一些技巧
  4. C语言 || 递归 || 求第n个人的年龄
  5. KDD 2022 | 图“预训练、提示、微调”范式下的图神经网络泛化框架
  6. 小米微信自动加好友appium
  7. 云栖社区订阅周刊大盘点
  8. Arduino智能小车——蓝牙小车
  9. 如何搭建合理的BOM
  10. 受欢迎的牛(有向图的强连通分量)