Android Build an Interactive Story App Finishing the User Interface Using a Model in the Presenter

Finally, notice that our Spaceship class has a new field to store the number of passengers in the ship. Use the method t

where am l getting it wrong
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;

public class LandingActivity extends AppCompatActivity {

    public Button thrustButton;
    public TextView typeLabel;
    public EditText passengersField;

    public Spaceship spaceship;

    public void onCreate(Bundle savedInstanceState) {

        thrustButton = (Button)findViewById(;
        typeLabel = (TextView)findViewById(;
        passengersField = (EditText)findViewById(;

        // Add your code here!
        spaceship = new Spaceship("FIREFLY");

      Int Integer =  spaceship.getNumPassengers().toSring();

public class Spaceship {
    private String shipType;
    private int numPassengers = 0;

    public String getShipType() {
      return shipType;

    public void setShipType(String shipType) {
      this.shipType = shipType;

    public int getNumPassengers() {
      return numPassengers;

    public void setNumPassengers(int numPassengers) {
      this.numPassengers = numPassengers;

    public Spaceship() {
      shipType = "SHUTTLE";

    public Spaceship(String shipType) {
      this.shipType = shipType;

1 Answer

Hi Glen. Let's have a look at your last 2 lines:

Int Integer =  spaceship.getNumPassengers().toSring();
  • The primitive type is int (all lowercase), not Int.
  • Integer is the name of the wrapper class for int in the Android framework, so you cannot name your variable that way. Remember that variable names should start with a lowercase, or the system will read it as a class. You could name it integer (lowercase) but it's best practice to pick descriptive names for your variables. So you could call it numPassengers or numberPassengers for example.
  • You do not need to call .toString() here as numPassengers (or whatever you decided to call it) is an integer (int), not a string.

You just have a small typo here: it's .getNumPassengers() (capital P).

Hope that helps :)