Take bus number Q10 from your terminal to Kew Gardens. This is the final stop. Change into the E or F train of NYC subway to Roosevelt Avenue/Jackson Heights.
Cost: $2 Time: 70 minutes
You should have a MetroCard with $2 on it to pay for the bus. If you don't, you must have $2 available in coins, not notes. If you pay in coins, you will not be getting the benefit of the subway ride being a transfer for the bus. That means that you will be charged at the subway station again for another $2.
Unfortunately, there appears to be no sales point for MetroCards within the airport itself. What you can do if you don't have a metrocard is take the AirTrain to the either of the two terminal stations, i.e., either Howard Beach or Jamaica. At either terminal station, you will find a Metro card vending machine. When you have purchased the ticket at Howard Beach, return with the AirTrain to the airport. Do not leave the air train terminal as you will be charged $5 on exit.
The airtrain is somewhat confusing. As the locals for help. There usually is someone in the station who works at the airport and knows the airtrain well.
If you have purchased your ticket at Jamaica, you have the option of leaving the train there, and then use the subway from Jamaica. You will be charged $5 for the AirTrain, and then $2 for the subway. But it saves you the hassle to return to an airport terminal and wait for the Q10 bus. Thus, the wealthy visitor may find this a suitable alternative to the formerly recommended Q10 route.
Here is the alternative route again, for your records.
Take the AirTrain from your terminal to Jamaica. Purchase MetroCard there, exit the AirTrain terminal, follow the signs to the subway. Use the E train of NYC subway to Roosevelt Avenue /Jackson Heights.
Cost: $7 Time: 50 minutes