小编典典

正如上文短C# (也为其他语言编译器以及Java一样)

从short到int,long,float,double或decimal进行了预定义的隐式转换。

你不能将较大存储大小的非文字数字类型隐式转换为短类型(有关整数类型的存储大小,请参阅“整数类型表”)。例如,考虑以下两个短变量x和y:

short x = 5, y = 12;

以下赋值语句将产生编译错误,因为赋值运算符右侧的算术表达式默认情况下计算为int。

short z = x + y; // Error: no conversion from int to short

要解决此问题,请使用强制转换:

short z = (short)(x + y); // OK: explicit conversion

尽管目标变量具有相同的存储大小或更大的存储大小,但是可以使用以下语句:

int m = x + y;

long n = x + y;

一个很好的后续问题是:

“为什么赋值运算符右侧的算术表达式默认计算为int”?

第一个答案可以在以下位置找到:

分类并正式验证整数常量折叠

在Java语言规范定义究竟如何整数来表示,如何整数算术表达式进行评估。这是Java的重要属性,因为该编程语言已设计为可用于Internet上的分布式应用程序。需要Java程序独立于执行它的目标机器来产生相同的结果。

相比之下,C(以及大多数广泛使用的命令式和面向对象编程语言)更加草率,并保留了许多重要特征。这种不正确的语言规范背后的意图很明显。通过使用目标

java short int 转换_基本类型'short'-Java中的强制转换相关推荐

  1. java 父类强制转换为子类_[java]Java中父类强制转换成子类的原则

    Java中父类强制转换成子类的原则:父类型的引用指向的是哪个子类的实例,就能转换成哪个子类的引用. 例: public class Test { public static void main(Str ...

  2. java.sql.Types,数据库字段类型,java数据类型的对应关系

    原文地址为: java.sql.Types,数据库字段类型,java数据类型的对应关系 以下转自:http://kummy.itpub.net/post/17165/172850 本文在原文基础上有增 ...

  3. 关于JAVA中的强制转换

    整数值被默认为int类型,浮点型字面值被默认当作double处理,例如3.0,所以 long a = 456:理解为int类型的整数型字面值456被赋予给long类型变量的, int类型当然可以被大类 ...

  4. c语言不同类型指针间的强转,C语言中不同的结构体类型的指针间的强制转换详解...

    C语言中不同类型的结构体的指针间可以强制转换,很自由,也很危险.只要理解了其内部机制,你会发现C是非常灵活的. 一. 结构体声明如何内存的分布, 结构体指针声明结构体的首地址, 结构体成员声明该成员在 ...

  5. Php中的强制转换详解

    强制转换中分为两种,第一种就只临时转换,和永久转换.在临时转换中呢,首先可以通过第一中方式来显示,就是小括号的形式,临时转换成整型我们可以通过(int)都是这样的形式,或者是(integer)临时转换 ...

  6. 【C++学习】C++中的强制转换

    C++中的强制转换 1.旧风格的强制换转换 C 风格(C-style)强制转型如下: (T) exdivssion // cast exdivssion to be of type T 函数风格(Fu ...

  7. java b 类型_什么类型的Java类型是“[B”?

    我试图通过Java代码(Hibernate)从MySQL DB获取MD5加密传递.但我不能得到字符串或任何合理的Java类型. 我唯一得到的是这个无益的信息: java.lang.ClassCastE ...

  8. # 对象json互相转换_推荐一款 Java 对象映射神器

    阅读本文大概需要 5 分钟. 来自:网络 前言按照日常开发习惯,对于不同领域层使用不同JavaBean对象传输数据,避免相互影响,因此基于数据库实体对象User衍生出比如UserDto.UserVo等 ...

  9. java 基础 笔试题_非常全面的java基础笔试题

    1.下列说法正确的是() (程序结构) A java程序的main方法必须写在类甩面 B java程序中可以有多个main方法 C.java程序中类名必须与文件名一样 D.JAVA程序的main方法中 ...

  10. java面试32问_学员分享:JAVA面试32问(11-20)

    第十一,short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错? short s1 = 1; s1 = s1 + 1;有错,s1是shor ...

最新文章

  1. 《转》八大算法详细讲解
  2. windows mobile开发循序渐进(5)移动应用程序与webservice之间的数据交互
  3. qt 主动打开虚拟键盘_ipad键盘有用吗?
  4. CV之FE:基于TF进行FE——去除异常(被损坏)图像 和单通道图像
  5. 【阿里云大学课程】前端必知——HTML5新特性完整视频教程(音频、视频、画布、web存储、动画……)...
  6. Python 可执行对象
  7. SQL Server 使用OPENROWSET访问ORACLE遇到的各种坑总结
  8. “约见”面试官系列之常见面试题第五篇说说vuex登录信息(建议收藏)
  9. ASP.NET Core和Blazor Code Venture:配置Azure AD身份验证
  10. C#序列化与反序列化方式简单总结
  11. SVN删除文件及其恢复
  12. 发布 html win7 工具,win7 天气 Win7自带的桌面天气工具怎么使用
  13. mysql统计分组求和
  14. apktool.bat 无法下载的解决方案
  15. python如何写日志_python写日志
  16. LowB三人组--插入排序原理和java实现
  17. HTML 表单 (form) 的作用解释
  18. 【LeetCode击败99%+】猜数字大小
  19. 天津理工大学2018年计算机硕士真题
  20. 在CSDN中如何快速简单方便的免费下载资料

热门文章

  1. PHP俄罗斯方块游戏代码,俄罗斯方块游戏,俄罗斯方块游戏编程代码
  2. 数字电路为什么是低电平有效的多
  3. 超好玩的css3-3d效果
  4. GIMP( GNU IMAGE MANIPULATION PROGRAM)
  5. open office进程总退出问题解决方法
  6. 10_微信小程序-BLE低功耗蓝牙开发-连接设备
  7. 博途V16 更改PLC的型号和固件版本
  8. 名人博客阅读摘要三:外部排序
  9. Android获取超级管理员权限
  10. TIBCO Rendezvous 概念