作业题中的问题

作业题中的问题

	public void setEmployeeAge(int employeeAge) {
		if ((this.employeeAge < 18) || this.employeeAge > 65)
			this.employeeAge = 18;
		else 
			this.employeeAge=employeeAge;
		
	}

	public String getEmployeeSex() {
		return employeeSex;
	}

	public void setEmployeeSex(String employeeSex) {
		if (!(this.equals("男") && this.equals("女")))
			this.employeeSex ="男";
		else
			this.employeeSex=employeeSex;
	}
	
	请问我这样写限定条件有什么错误,为什么无法正确限定??


正在回答

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

4回答

public void setEmployeeAge(int employeeAge) {
    if ((employeeAge < 18) || employeeAge > 65)
   this.employeeAge=18;
    else
         this.employeeAge=employeeAge;
    
}
 
public String getEmployeeSex() {
    return employeeSex;
}
 
public void setEmployeeSex(String employeeSex) {
    if (!(employeeSex.equals("男") && employeeSex.equals("女")))
  this.employeeSex ="男";
    else
        this.employeeSex=employeeSex;
}


  • the__sky123 提问者 #1
    第二条限定性别的还是不对,找你这样也不对...
    2018-03-25 16:59:41
  • the__sky123 提问者 #2
    非常感谢!
    2018-03-25 17:16:23
  • 慕粉15719717264 回复 提问者 the__sky123 #3
    equals()方法只是判断两个内存空间的地址是不是一样的,判断两个值需要重写equals()方法。
    2018-03-25 17:19:36
慕粉15719717264 2018-03-25 17:42:10
public class Student {

 private  int employeeAge;

 private  String employeeSex;

 public Student() {}

 public Student(int employeeAge,String employeeSex) {

  this.setEmployeeAge(employeeAge);

  this.setEmployeeSex(employeeSex);

 }

 //set设置信息:

 public void setEmployeeAge(int employeeAge) {

     if ( employeeAge<18 || employeeAge>65)  //这块去掉this

    this.employeeAge=18;

     else 

          this.employeeAge=employeeAge;  

 }

  

 public void setEmployeeSex(String employeeSex) {

     if (!(employeeSex.equals("男") || employeeSex.equals("女")))

   this.employeeSex ="男";

     else

         this.employeeSex=employeeSex;

 }

 //get活得信息:

 public int getEmployeeAge() {

     return this.employeeAge;

 }

 public String getEmployeeSex() {

     return this.employeeSex;

 }

}

//这是完整的语句,性别那块的原因是用了与(&&)的关系,用或(||)的关系就正确了。

提问者 the__sky123 2018-03-25 16:53:35

为什么在set中的if中添加this 就不能正常限定

而如果把限定条件加到get中无论有无this都可以正常限定??

问题已解决,确定采纳
还有疑问,暂不采纳

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

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

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

在线咨询

领取优惠

免费试听

领取大纲

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