5.1D или 5.1: если вы не укажете букву типа для номера запятой, то по умолчанию она будет двойной
5: без периода, по умолчанию это int
Ответ 3
Они являются спецификаторами формата для float и double literals. Когда вы пишете 1.0, это двусмысленно относительно того, хотите ли вы, чтобы литерал был плавающим или двойным. Написав 1.0f, вы говорите Java, что вы предполагаете, что литерал является float, а при использовании 1.0d указано, что он должен быть двойным. Там также L, который представляет длинный (например, 1L является long 1, а не int 1)
Ответ 4
D означает double, а F обозначает float. Иногда вам нужно будет добавить эти модификаторы, поскольку в этом случае 5 считается целочисленным, а 3.0 - двойным.
Ответ 5
Он определяет тип данных для констант 5 и 3.0.
Ответ 6
Как уже упоминалось, это определения типов, однако вы вряд ли увидите, что я или d упомянуты, поскольку они являются значениями по умолчанию.
float myfloat = 0.5;
будет ошибкой, так как 0.5 по умолчанию является двойным, и вы не можете отключить автобокс с двойного на float (64 → 32 бита), но