3-8作业问题

3-8作业问题

	package com.imcoo.demo;
/***
 * 创建 部门类
 * @author Administrator
 *   描述部门编号、部门名称、获取所有该部门员工信息
 *   统计该部门员工个数
 */
public class Department {

	 private String departmentnumb;
	 private String departmentname;
	 private staff[] mystaff;
	 private int staffNumber;

	 
	public Department() {
		
	}
    public Department(String departmentname) {
    		
    	this.setDepartmentname(departmentname);
	}
	
	
	public String getDepartmentnumb() {
		return departmentnumb;
	}
	public void setDepartmentnumb(String departmentnumb) {
		this.departmentnumb = departmentnumb;
	}
	public String getDepartmentname() {
		return departmentname;
	}
	public void setDepartmentname(String departmentname) {
		this.departmentname = departmentname;
	}
	public staff[] getMystaff() {
		if(this.mystaff==null)
			this.mystaff=new staff[100];
		return mystaff;
	}
	public void setMystaff(staff[] mystaff) {
		this.mystaff = mystaff;
	}
	 
	 public int getStaffNumber() {
		return staffNumber;
	}
	public void setStaffNumber(int staffNumber) { 
		this.staffNumber = staffNumber;
	}
	
	public void  addstaff(staff sta) {
		
		 for(int i=0,m=0,n=0;i<this.getMystaff().length;i++) {
			 if(this.getMystaff()[i]==null) {
			 this.getMystaff()[i]=sta;			 
				 if(this.getMystaff()[i].getStaffname()=="人事部")
				 { this.staffNumber=m+1;
				     m++;
				 }
					 else 
						{this.staffNumber=n+1;
				         n++;}
				 break;
			 }
				
			
			 
			 
			 
	 }

		 
		 
	 }	 
	
	
}		
			
			
			
			
			
			
			
	package com.imcoo.test;
import com.imcoo.demo.Department;
import com.imcoo.demo.Job;
import com.imcoo.demo.staff;
public class TestDemo {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Department  dep1=new Department("人事部");
		Job job1=new Job("经理");
		staff sta1= new staff("张铭","S001","男",29,dep1,job1);
		
		System.out.println(sta1.Play());
		System.out.println("====================================");
		
	
		Job job2=new Job("助理");
		staff sta2= new staff("李艾爱","S002","女",21,dep1,job1);
		System.out.println(sta2.Play());
		System.out.println("====================================");
		
		Job job3=new Job("职员");
		staff sta3= new staff("孙超","S004","男",29,dep1,job3);
		System.out.println(sta3.Play());
		System.out.println("====================================");
		Department  dep2=new Department("市场部");		
		staff sta4= new staff("张美美","S005","女",26,dep2,job3);
		System.out.println(sta4.Play());
		System.out.println("====================================");
		staff sta5= new staff("张蓝迪","S006","男",37,dep2,job1);
		System.out.println(sta5.Play());	
		staff sta6= new staff("米莉","S007","女",24,dep2,job3);
		System.out.println(sta6.Play());
		System.out.println("====================================");
		
		dep1.addstaff(sta1);
		dep1.addstaff(sta2);
		dep1.addstaff(sta3);
		dep2.addstaff(sta4);
		dep2.addstaff(sta5);
		dep2.addstaff(sta6);
		
		
		System.out.println(dep1.getDepartmentname()+"总共有"+dep1.getStaffNumber()+"名员工");
		System.out.println(dep2.getDepartmentname()+"总共有"+dep2.getStaffNumber()+"名员工");
	}

	
	
}		
			

http://img1.sycdn.imooc.com/climg//59ca70e600010e9b05390733.jpg


老师帮忙看下 我这个输出为什么一直是1   到底是我的加法语句有问题  还是其他地方的问题

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕雪 2017-09-27 09:48:56

1)因为每次 addstaff(staff sta) 时都会走  for(int i=0,m=0,n=0;i<this.getMystaff().length;i++) {所以m和n每次都是从0开始计数的,你可以把m,n删除,直接写成this.staffNumber=this.staffNumber+1;  2)另外你没必要 if(this.getMystaff()[i].getStaffname()=="人事部"){}else{}不管是什么部门,this.staffNumber都是在统计本部门的员工数。直接this.staffNumber=this.staffNumber+1; 就可以了。3)字符串判断内容是否相等不是用==判断,而应该用"".equals("")这种形式。祝:学习愉快

  • 提问者 猪哥哥呀 #1
    public void addstaff(staff sta) { /** * 1丶 将员工保存到数组中; * 2丶将人事部员工个数保存到staffNumber1 * 3丶将市场部员工个数保存到staffNumber2 */ for(int i=0;i<this.getMystaff().length;i++) { if(this.getMystaff()[i]==null) { this.getMystaff()[i]=sta; this.staffNumber1++; this.staffNumber2++; break; } 可是我这是分别统计2个部门员工的个数,我这样写解释不通啊,为什么我用if(this.getMystaff()[i].getStaffname().equals("人事部")} 这句话判断输入哪个部门不起作用?
    2017-09-27 15:30:51
  • 好帮手慕雪 回复 提问者 猪哥哥呀 #2
    查看 http://class.imooc.com/course/qadetail/21518
    2017-09-27 17:34:22
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星

相似问题

登录后可查看更多问答,登录/注册

请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师