А данном случае + склеивает строки. Система смотрит, что по левую сторону от + строка и преобразует r.i так же в строку. Затем он склеивает их и выводит на консоль. И это не только в Java так. Ты можешь склеивать так две строки. "Теперь ваше число = " + "35", например.
Правильно сравнивать C# и Java, как языки; .NET и J2EE, как платформы для построения распределённых приложений.
Вот как раз для огромного количества посещений и нехилый объём данных, кластеризацию, гриды, сильно распределённые приложения с высоким уровнем масштабирования подойдёт J2EE, а .NET(дотнетиненадо) - мёртворожденная технология, калька со старых спецификаций J2EE, переизобретённый велосипед, да ещё и обрезанный, с совершенно дебильной реализацией :)