LINUX.ORG.RU

История изменений

Исправление mono, (текущая версия) :

Потому что примитивы в java живут по своим законам, и это изначально была не очень хорошая идея архитектурно. Ты ещё можешь вспомнить автоматический боксинг/анбоксиг.

С точки зрения примитивов в java так – есть автоматическое приведение примитивов, если возможно.

// можешь
byte a = 10;
int b = b;

// не можешь
int c = 10;
byte d = c;

В Kotlin, к примеру, не так – в любом случае приведение нужно явно писать, потому что примитивы, как и всё остальное, являются объектами:

val a: Byte = 5
val b: Int = a.toInt()

val c: Int = 5
val d: Byte = c.toByte()

Исходная версия mono, :

Потому что примитивы в java живут по своим законам, и это изначально была не очень хорошая идея архитектурно. Ты ещё можешь вспомнить автоматический боксинг/анбоксиг.

С точки зрения примитивов в java так – есть автоматическое приведение примитивов, если возможно.

// можешь
byte a = 10;
int b = b;

// не можешь
int c = 10;
byte d = c;

В Kotlin, к примеру, не так – в любом случае приведение нужно явно писать, потому что примитивы, как и всё остальное, являются объектами:

val a: Byte = 5
val b: Int = a.toInt()

val c: Byte = 5
val d: Int = c.toInt()