Почему в Java все типы пишутся с маленькой буквы, а String – с большой?

Почему только string с большой буквы? В шарпе все базовые типы вроде с маленькой пишутся, а тут дичь какая то, короче объясните кто знает плз

Потому что String это класс. Если вы учили C#, то вы, должно быть, привыкли, что class это тоже самое что и type, но в Java есть разница между int и Int, double и Double и тд.

Всё что пишется с большой буквы - это классы, с маленькой - это примитивные типы, которые завёрнуты в классы. String не имеет такого "внутреннего" примитивного типа string.