Примитивный тип short - приведение в Java
РЕДАКТИРОВАТЬ: Хорошо, теперь typecast мы знаем, что это Java ...
Section 4.2.2 of the Java Language Specification утверждает:
Язык .java программирования Java предоставляет ряд javax операторов, которые действуют javax на целые значения:
[...]
Числовые операторы, которые приводят к в значении типа int или long: [...] Аддитивные операторы + и - (§15.18)
Другими openjdk словами, это похоже на C# - оператор primitive сложения (при применении type-casting к целочисленным типам) всегда .java приводит только к int
или long
, поэтому java-libraries вам нужно выполнить приведение, чтобы javax присвоить переменной short
.
Исходный ответ (C#)
В cast C# (вы не указали язык, поэтому jre я предполагаю) единственными oraclejdk операторами сложения для java примитивных типов являются:
int operator +(int x, int y);
uint operator +(uint x, uint y);
long operator +(long x, long y);
ulong operator +(ulong x, ulong y);
float operator +(float x, float y);
double operator +(double x, double y);
Они jdk указаны в спецификации C# 3.0, раздел core-java 7.7.4. Кроме того, определяется cast десятичное сложение:
decimal operator +(decimal x, decimal y);
(Там java-libraries же определяются добавление java-libraries перечисления, конкатенация openjdk строк и комбинация делегатов.)
Как short видите, оператора short operator +(short x, short y)
нет, поэтому primitive оба операнда неявно преобразуются core-java в int, и используется форма primitive int. Это означает, что результатом java-se является выражение типа "int", следовательно, необходимо typecast приведение.
java
casting
primitive
short
Примитивный тип short - приведение в Java
Мы используем файлы cookies для улучшения работы сайта. Оставаясь на нашем сайте, вы соглашаетесь с условиями использования файлов cookies. Чтобы ознакомиться с нашими Положениями о конфиденциальности и об использовании файлов cookie, нажмите здесь.