ねえ、この宿題があり、方法の 1 つに問題があります。実際の回答/コードではなく、ヒントが欲しいです。
したがって、馬の配列をいじる HorseBarn というクラスがあります(馬がタイプです)。私の問題は、連結方法に問題があることです。
統合前の配列: a、b、c、d は馬
|a|null|b|null|c|d|
統合後の配列は次のようになります。
|a|b|c|d|ヌル|ヌル|
したがって、私のロジックは、ネストされた for ループを作成することです。最初のループはヌル値を検索し、最初のループがヌル値を見つけると、2 番目のループは馬を探して、それと交換します。その後、2 番目のループが終了し、最初のループに戻ります。ここに私が今持っているものがありますが、動作しません(終了するだけです)。私のロジックが間違っているのでしょうか、それとも私の構文が問題を引き起こしているのでしょうか?
public void consolidate()
{
int j = 0;
for(int i = 0; i < spaces.length;i++)
{
if( spaces[i] == null)
{
for(j = i; j < spaces.length && spaces[j] == null; j++)
{
}
spaces[i] = spaces[j];
spaces[j] = null;
}
}