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 Creating the MVP Scrabble Tiles

Pratham Mishra
PLUS
Pratham Mishra
Courses Plus Student 935 Points

can anyone help me here. I got stuck on this exsercise

Okay great, now can you fix the hasTile method for me, right now it always returns false. Correct the existing hasTile method to return true if the tile is in the tiles field, and false if it isn't. You can solve this a few ways, however, I'd like you to practice returning the result of the expression that uses the index of a char in a String.

ScrabblePlayer.java
public class ScrabblePlayer {
  // A String representing all of the tiles that this player has
  private String tiles;

  public ScrabblePlayer() {
    tiles = "";
  }

  public String getTiles() {
    return tiles;
  }

  public void addTile(char tile) {
    // TODO: Add the tile to tiles
tiles += tile;
  }

  public boolean hasTile(char tile) {
    // TODO: Determine if user has the tile passed in
    return false;
  }

}

3 Answers

maxmaltsev
maxmaltsev
3,419 Points

Below is my solution:

What it does: it takes char tile as a parameter and looks for it in the String tiles. IndexOf returns positive index number if your char was found in the String and negative if it wasn't. So basically we are saying here: as long as the index of tile char is not -1 (not found), then return is true.

 public boolean hasTile(char tile) {
    return tiles.indexOf(tile)!=-1;
  }
Simon Coates
Simon Coates
28,694 Points

try https://teamtreehouse.com/community/hastile-method-3 . if useful, please upvote the code at this location. Keep in mind most of the time there are dozens of existing treehouse forum posts for a given problem (eg.https://teamtreehouse.com/community/code-challenge:16142) . Sometimes it can be quicker than waiting for a new response.

ADE YALSHIRE
ADE YALSHIRE
18,049 Points

public boolean hasTile(char tile) { return (tiles.indexOf(tile)>=0); }