(现在使用更新的代码)在尝试从我的程序中获得正确的输出时遇到严重问题。我需要从这个程序中得到一个特定的输出,它应该是这个输出:
Rick...
This bushel basket has 0 apples in it.
This bushel basket has 33 apples in it.
This bushel basket has 29 apples in it.
This bushel basket has 0 apples in it.
Newt...
This bushel basket has 100 apples in it.
false
false
100
25
Michele...
true
false
false
false
false
true
Herman...
This bushel basket has 0 apples in it.
Jon...
This bushel basket has 125 apples in it.
Ron...
This bushel basket has 20 apples in it.
This bushel basket has 0 apples in it.
This bushel basket has 125 apples in it.
Gary...
This bushel basket has 0 apples in it.
但是我收到了输出:
Rick...
This bushel basket has 0 apples in it.
This bushel basket has 33 apples in it.
This bushel basket has 29 apples in it.
This bushel basket has 0 apples in it.
Newt...
This bushel basket has 100 apples in it.
false
false
100(THIS IS WHERE THE BAD OUTPUT STARTS)
true
Michele...
true
false
false
false
false
true
Herman...
This bushel basket has -5 apples in it.
Jon...
This bushel basket has 300 apples in it.
Ron...
This bushel basket has 20 apples in it.
This bushel basket has -30 apples in it.
This bushel basket has 960 apples in it.
Gary...
This bushel basket has 0 apples in it.
这是代码
public class AppleOrchard
{
public static void main(String [] args)
{
System.out.println("Rick...");
BushelBasket rick = new BushelBasket(0);
rick.print();
rick.pick(11);
rick.pick(22);
rick.print();
rick.eat(4);
rick.print();
rick.spill();
rick.print();
System.out.println("Newt...");
BushelBasket newt = new BushelBasket(100);
newt.print();
System.out.println( newt.isEmpty() );
System.out.println( newt.isFull() );
System.out.println( newt.getApples() );
System.out.println( newt.roomLeftInBasket() );
System.out.println("Michele...");
BushelBasket michele = new BushelBasket(0);
System.out.println( michele.isEmpty() );
System.out.println( michele.isFull() );
michele.pick(25);
System.out.println( michele.isEmpty() );
System.out.println( michele.isFull() );
michele.pick(100);
System.out.println( michele.isEmpty() );
System.out.println( michele.isFull() );
System.out.println("Herman...");
BushelBasket herman = new BushelBasket(-5); // should default to 0
herman.print();
System.out.println("Jon...");
BushelBasket jon = new BushelBasket(300); // should default to 125
jon.print();
System.out.println("Ron...");
BushelBasket ron = new BushelBasket(20); // starts with 20
ron.print();
ron.eat(50); // can only eat down to zero apples
ron.print(); // should see zero apples
ron.eat(10); // back to 10
ron.pick(1000); // basket can only hold 125 apples
ron.print(); // should print 125
System.out.println("Gary...");
BushelBasket gary = new BushelBasket(0); // should default to 0
gary.print();
}
}
class BushelBasket
{
int apples;
BushelBasket(int apples)
{
if (apples > 0 && apples < 125)
this.apples = apples;
}
public void spill()
{
apples = 0;
}
public void pick(int x)
{
if (!isFull())
apples = apples + x;
}
public void eat(int x)
{
if (!isEmpty())
apples = apples - x;
}
public int getApples()
{
return apples;
}
public void print()
{
int x = getApples();
System.out.println("This bushel basket has " + x + " apples in it.");
}
public boolean isEmpty()
{
int emtpy = 0;
if (apples <= emtpy)
{
return true;
}
else
{
return false;
}
}
public boolean isFull()
{
int full = 125;
if (apples >= full)
{
return true;
}
else
{
return false;
}
}
public boolean roomLeftInBasket()
{
int full = 125;
if (apples < full)
{
return true;
}
else
{
return false;
}
}
}