As I said, I think I am much more influenced by the language I see in the forum than the one shown in a dropdown. Your Japanese user would see all posts in Japanese if they didn’t add English to the languages they understand. So it might feel natural for them to reply in that language. But if you see an forum with English posts only, you tend to post in that language too as long as it’s not a to big hurdle.
If you saw a German forum with almost all post in German would you just post in French just because there was a dropdown to choose French as the interface language for the forum?
You can enable the Content localization language switcher only for anonymous users and let everyone who signs up select their preferred language in their preferences where all languages the Discourse interface supports are offered.
But you would still see the other users post in a different language.
And I think this is what makes me write this in English. I want you to understand me as well as possible. So if everyone writes in English, I try to do that too. Translations always result in information loss.
An example from Meta:
This is what the English post says:
This is what the German translation says:
However, the script hasn’t been working for the past few months and now only returns 400 errors.
If I wanted to find out what has changed the nuance between “stopped working in the last month” and “hasn’t been working for the past months” is quite important.
That’s why I usually try to stick to a language we both understand. There is less risk for misunderstandings and if there are any I at least know why. If I don’t know the translation you are looking at that is much more difficult.
So I use the language other users in this forum use - not because of a dropdown somewhere but because I want them to understand me.