Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

I get an error Fails Initialize Number of Names (2 occurrences) Fails Initialize

ID: 649301 • Letter: I

Question

I get an error

Fails Initialize Number of Names (2 occurrences)

Fails Initialize Number of Names when same name changed

for my code below I dont know why? (Do not ask for Email)

public class PersonName {

   private int numberOfNames;
   private String firstName;
   private String middleName;
   private String lastName;
   private String suffixName;
  
   public PersonName(){
       numberOfNames = 0;
       firstName = "";
       middleName = "";
       lastName = "";
       suffixName = "";
   }
public void setFirstName (String firstName){
   if(this.firstName.length() > 0 && firstName.length() > 0){}
else if(this.firstName.length() == 0 && firstName.length() == 0){}
else if(this.firstName.length() > 0 && firstName.length() == 0) numberOfNames--;
else numberOfNames++;
this.firstName = firstName;
}
public String getFirstName (){
   return firstName;
}
public void setMiddleName (String middleName){
   if(this.middleName.length() > 0 && middleName.length() > 0){}
else if(this.middleName.length() == 0 && middleName.length() == 0){}
else if(this.middleName.length() > 0 && middleName.length() == 0) numberOfNames--;
else numberOfNames++;
this.middleName = middleName;
}
public String getMiddleName (){
   return middleName;
}
public void setLastName(String lastName){
   if(this.lastName.length() > 0 && lastName.length() > 0){}
else if(this.lastName.length() == 0 && lastName.length() == 0){}
else if(this.lastName.length() > 0 && lastName.length() == 0) numberOfNames--;
else numberOfNames++;
this.lastName = lastName;
}
public String getLastName(){
   return lastName;
}
public void setSuffixName(String suffixName){
   this.suffixName= suffixName;
}
public String getSuffixName (){
   return suffixName;
}
public int getNumberOfNames(){
   return numberOfNames;
}
}

Explanation / Answer

public class PersonName {

   private int numberOfNames;
   private String firstName;
   private String middleName;
   private String lastName;
   private String suffixName;
  
   public PersonName(){
       numberOfNames = 0;
       firstName = "";
       middleName = "";
       lastName = "";
       suffixName = "";
   }
public void setFirstName (String firstName)

{
   if(this.firstName.length() > 0 && firstName.length() > 0)

{

numberOfNames+=1;

}
else

if(this.firstName.length() == 0 && firstName.length() == 0&& this.firstName.length() < 0 && firstName.length()< 0)

{

numberOfNames+=0;

System.out.println("no such name");

}

public String getFirstName ()

{
   return firstName;
}
public void setMiddleName (String middleName)

{

if(this.middleName.length() > 0 && middleName.length() > 0)

{

numberOfNames+=1;

}
else

if(this.middleName.length() == 0 && middleName.length() == 0&& this.middleName.length() < 0 && middleName.length()< 0)

{

numberOfNames+=0;

System.out.println("no such name");

}
public String getMiddleName ()

{
   return middleName;
}
public void setLastName(String lastName)

{

if(this.lastame.length() > 0 && lastName.length() > 0)

{

numberOfNames+=1;

}
else

if(this.lastName.length() == 0 && lastName.length() == 0&& this.lastName.length() < 0 && lastName.length()< 0)

{

numberOfNames+=0;

System.out.println("no such name");

}
public String getLastName()

{
   return lastName;
}
public void setSuffixName(String suffixName)

{
   this.suffixName= suffixName;
}
public String getSuffixName ()

{
   return suffixName;
}
public int getNumberOfNames()

{
   return numberOfNames;
}
}