新しいセクションを設定するときは、カウンターを追跡する必要があります。たとえば、m1 が Brass で、setSection(Strings); を使用するとします。Brass-- と Strings++ が必要ですが、if ステートメントでそれを行う方法がわかりません。また、getSection()toString() で元のセクションが取得されるかどうかもわかりません。
/**This function sets a musician's Orchestra Section.
@param section is a SymphonySection indicating the musician's Orchestra Section.*/
public void setSection(SymphonySection section) {
this.section = section;
if (getSection().toString().equals( "Strings" )){
Strings--;
}
else if (getSection().toString().equals( "Brass" )){
Brass--;
}
else if (getSection().toString().equals( "Conductor" )){
Conductor--;
}
else if (getSection().toString().equals( "Percussion" )){
Percussion--;
}
else if (getSection().toString().equals( "WoodWinds" )){
WoodWinds--;
}
if (section.toString().equals( "Strings" )){
Strings++;
}
else if (section.toString().equals( "Brass" )){
Brass ++;
}
else if (section.toString().equals( "Conductor" )){
Conductor ++;
}
else if (section.toString().equals( "Percussion" )){
Percussion ++;
}
else if (section.toString().equals( "WoodWinds" )){
WoodWinds ++;
}
}