Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

Java Java Objects (Retired) Harnessing the Power of Objects Incrementing

Trouble understanding the question

What am I suppose to do in the question? How would you get started?

GoKart.java
public class GoKart {
  public static final int MAX_ENERGY_BARS = 8;
  private String mColor;
  private int mBarsCount;

  public GoKart(String color) {
    mColor = color;
    mBarsCount = 0;
  }

  public String getColor() {
    return mColor;
  }

  public void charge() {
    mBarsCount = MAX_ENERGY_BARS;
  }

  public boolean isBatteryEmpty() {
    return mBarsCount == 0;
  }

  public boolean isFullyCharged() {
    return mBarsCount == MAX_ENERGY_BARS;
  }

}
Craig Fender
Craig Fender
7,605 Points

What is the question? What is it asking you to do? I can't load the challenge to see what it wants you to do.

I forgot to write the question, sorry. Here it is: "Okay, so let's use our new isFullyCharged helper method to change our implementation details of the charge method. Let's make it so it will only charge until the battery reports being fully charged. Let's use the ! symbol and a while loop. Inside the loop increment mBarsCount."

2 Answers

Craig Fender
Craig Fender
7,605 Points

It looks like it wants you to rewrite the charge() method. So take out the code already in the charge() method. Next use a while loop to add one to mBarsCount while mBarsCount is not equal to MAX_ENERGY_BARS. It wants you to use the new incrementer trick it showed you on mBarsCount, so it would look like mBarsCount++. I hope that helps you.

Justin Horner
STAFF
Justin Horner
Treehouse Guest Teacher

Hello Allen,

The challenge is asking you to make the charge method continually loop until the GoKart is fully charged. To do this, you'll need to use a while loop and the isFullyCharged method to determine when to stop charging.

Each time the while loop executes, we want to add one to the mBarsCount. When the call to isFullyCharged returns true, then we'll exit the loop and return from the function.

 public void charge() {
    while (!isFullyCharged()) {
      mBarsCount++;
    }
  }

I hope this helps