I've lived in Japan for about seven years now, and so far the positives still outweigh the negatives, at least for me. Yes, Japanese are "racist" in the sense that their viewpoint is "Japanese" and "everyone else." I have no problem wanting to keep a unique culture, but their inability to understand and accept even half Japanese or second generation Japanese who come from overseas is maddening at times. Many Japanese that I talk to are convinced racism doesn't exist in Japan, because their concept of racism is blacks getting lynched, burning crosses or Nazis throwing Jews in concentration camps. When I tell them that there is really only one race in Japan, it does give them pause for thought.
Having said all that, Japan is a great place to live, if you can accept a few cardinal rules. As a foreigner, you will never, ever, ever, ever be seen as Japanese, no matter how good your Japanese is, whether you marry and raise kids or get Japanese citizenship. This is not necessarily a bad thing, because on the flip side, the expectations that Japanese have of each other do not apply to us. I work in the school system, so I see first hand how Japanese essentially become Japanese. As someone who was not raised in this culture it seems illogical and ridiculous at times, but it's what made Japan what it is today.
The people who end up hating Japan are the foreigners who come here with certain expectations, or come here because they like manga and think they are fluent because they can say "kawaiiii!" Learning the language is a big bonus, it's definitely helped make my life a lot more convenient and fun. I live out in the country, where no one speaks English. On a personal level, like anywhere, Japanese are very capable of having strong friendships with foreigners. It just takes a bit longer to get over some preconceptions they have.
And I must admit I do have a soft spot for Japanese girls
.