Using a spinner like a HTML select to display string but return int value
As long as you are hard-coding the values, I would go with an enum

public enum Muppets {
    Kermit, Gonzo, Fozzie, Animal, Swedish_Chef, Miss_Piggy,
    Statler, Waldorf, Beaker, Beauregard, Dr_Benson_Honeydew,
    Crazy_Harry, Rowlf, Dr_Teeth, Zoot, Janice, Floyd;
    // Sorry, I just thought your list of muppets was way too short

    public int getNumber() {
        return this.ordinal() + 1;
    }
    @Override
    public String toString() {
        return super.toString().replaceAll("_", " ");
    }
}


(To make things easier for you, you can also add your Please Select as a muppet and override the toString method to return a custom string if this == PLEASE_SELECT, this would also remove the need for adding one in getNumber, and would greatly simplify adding the items to the adapter)

Then I would use the ArrayAdapter as ArrayAdapter&lt;Muppet&gt;, so that you can get the selected item like this:

Muppet selectedMuppet = spinner.getSelectedItem();
int value = selectedMuppet.getNumber();


To get an array of all the muppet enums, use Muppets.values().

If you want the possibility to add muppets dynamically at run-time, I would make a List&lt;String&gt; and get the position of an item using list.indexOf(muppetName).