Before taking a trip to Japan in 2007 I did some research about where is the best place to change U.S. dollars into Japanese Yen and if it was better to do so before or during the trip. The views conflicted and were sometimes wrong. So while I was in Japan I did some tests to find out the real story. The following are my results.

There are numerous possibilities for changing American dollars into Japanese Yen. They don't all offer the same rates. They include:
1) Change dollars to yen at bank in US.
2) Change dollars to yen at airport in US.
3) Change dollars to yen at airport in Japan.
4) Change dollars to yen at post office in Japan.
5) Change international postal money order purchased at USA post office in Japan.
6) Change travelers checks purchased in USA at post office, airport, or bank in Japan.
7) Withdraw yen via ATM card at Japanese bank.
8) Withdraw yen via ATM card at Japanese post office.
9) Use VISA, Mastercard, or American Express credit cards in Japan.

Let's look at the rates I received on each including any additional fees and pros and cons.

1) Rate was US$100 = Yen11,390 + an $8 charge per order through Wells Fargo meaning you would get less than 11,390 yen per $100 with the fee per order. Rate was even worse through Bank of America.
2) Rate was US$100 = Yen10,500 at San Francisco airport. That's not a typo. SFO was only offering 105 yen for each USD.
3) Rate was US$100 = Yen11,500 at Narita airport for cash.
4) Rate was US$100 = Yen11,508 at Narita post office for cash. (There are two post offices in the airport at Narita. The service was very slow though and the employees didn't speak any English.)
5) Rate was US$100 = Yen11,672 at Narita post office for international postal money order. Be sure to have ID on you other than your passport that has your US address and your name on it. Also be sure to have your Japanese address with you written in Japanese. The international postal money orders cost $3.45 each and can be purchased in denominations up to $700. This brings the rate down to US$100 = Yen11,614 if you purchase them only in lots of $700. In addition, if these are lost or stolen they can be replaced so they are much safer than bringing cash.
6) I actually didn't try this one but the rates appeared to be 1% better than cash. However, travelers checks (cheques) generally cost between $10 and $25. Although they are insured against loss, unlike cash, I don't think they are as good a deal as international money orders.
7) This does not work. Japanese banks do not take US ATM cards. This is different than most other countries so don't count on this when going to Japan.
8) Rate was US$100 = Yen11,400. Note that the maximum you can withdraw in a day is about Yen30,000.
9) Rate was US$100 = Yen11,500. I was surprised at how many places took Mastercard and American Express. I had heard that Japan was still "cash only," but many restaurants and two out of the three places we stayed took one credit card or the other. If you are getting cash back, miles, etc. for using credit cards then this is a good option. You'll still want some cash on hand for the places that don't take credit cards and for train travel, etc.

Conclusion: Do not change your US Dollars into Japanese Yen in America! The best place to get actual Japanese cash, from both a security and rate perspective, is through the post office in Japan after purchasing international money orders at the post office in the US. Make sure to bring the necessary items with you, mentioned in #5 above.

Finally, if you have a credit card with perks of 1% or more then use your credit card in Japan too.

Note that the rate that you will receive with be different. However, since I obtained these rates on the same day, they should be relatively the same when compared to each other.

Blog on the subject with updated information. Post your experiences here.

2009 update! Don't follow the above advice with respect to credit cards. For current tips on getting the most yen for your dollars click here.