先了解一下基本得数据类型,以整数类型为例,如下表:

数据类型 长度 范围
byte 1字节 -128~127
short 2字节 -32768~32767
int(默认) 4字节 -2147483648~2147483647
long 8字节 -xxxxxx~(xxxxxx-1)

     范围的计算方法:根据以上数据我们进行分析总结规律如下:

-128=-2^7     ;    127=2^7-1

-32768=-2^15    ;    32767=2^15-1

........

最小值=-2^(字节✖8-1)]       最大值=2^(字节✖8-1)-1

根据数据我们得出了数据类型的范围计算方法,我们再深度思考一下,为什么这样算那?为什么非要乘以它的位数-1次方哪,而不是乘以位数次方,说到这,我们不由得需要回顾一下计算机基础知识。首先我们需要知道以下两点:

  1. 计算机内部数据和运算均采用的是二进制;
  2. 计算机中数据分为有符号数和无符号数,对于有符号数,计算机规定用最高位来表示符号。“0”表示正数,“1”表示负数;

通过以上两点我们也可猜到JAVA中的数据也是有符号的,最高位代表正负,所以:

最小值=-2^(字节✖8-1)]       最大值=2^(字节✖8-1)-1

最大值减一是因为数字0。

强制转换使用条件

每种数据类型都有自己得取值范围,当我们进行数据转换时,由小范围➡大范围时编译不会报错,但当由大范围➡小范围时,即使你输入得数是1(即数据都在两个数据类型范围内),编译时也会报错,因为数虽然没有溢出,但数据类型的位溢出了,此时编译不会通过,需要强制转换。由此可见,强制转换是在大范围得数据类型向小范围的数据类型转换中使用的。

注意事项:当我们对数据类型不进行声明时,对于整数类型默认为int类型、浮点类型默认为double类型等.

强制转换的格式(以double向int转换为例)

public class Sumer{public static void main(String[] arrgs){double a,b; //将a,b的数据类型命名为double.int c;a=12;b=13; c=int(a+b)   System.out.println(c);}
}

因此强制转换的格式为:

变量名1=(变量名1的数据类型)(变量运算)

JAVA数据类型的强制转换相关推荐

  1. Java 基本数据类型的强制转换和自动转换,基本数据类型包装类,Integer常用方法,Integer中equals和==的区别

    文章目录 基本数据类型的自动转换 基本数据类型的强制转换 包装类(封装类) Integer类中的方法 一:Number中的xxxValue()方法 二:Integer.parseInt("S ...

  2. Java 相同类型强制转换异常

    Java 相同类型强制转换异常 参考文章: (1)Java 相同类型强制转换异常 (2)https://www.cnblogs.com/LoveShare/p/11785056.html (3)htt ...

  3. 前端基础(四)_数据类型的强制转换

    数据类型的强制转换就是通过js提供的函数进行数据转换.常见的就是将其他类型的数据转换成number类型和string类型. 一.其他类型转 number 类型 1.Number Number 方法将其 ...

  4. python中如何进行数据类型转换_python数据类型的强制转换

    首页 专栏 python 文章详情 0 python数据类型的强制转换 小小垂髫 发布于 1 月 21 日 数据类型的强制转换 如果要将一个数据转换成另一个数据类型,只需要将其放入相应类型的函数中去. ...

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

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

  6. python nonetype转换float_python数据类型的强制转换

    数据类型的强制转换 如果要将一个数据转换成另一个数据类型,只需要将其放入相应类型的函数中去. Number类型的数据转换 强制转换为int 可以转换的数据类型 int 整型 float 浮点型 boo ...

  7. python强制转换整数_python数据类型的强制转换

    数据类型的强制转换 如果要将一个数据转换成另一个数据类型,只需要将其放入相应类型的函数中去. Number类型的数据转换 强制转换为int 可以转换的数据类型 int 整型 float 浮点型 boo ...

  8. java数据类型之间的转换_Java基本类型之间的转换

    一.基本数据类型长度 byte:一个字节,8位,有符号 short:两个字节,16为,有符号 char:两个字节,16位,无符号 int:4个字节,32位,有符号 float:4个字节,32位,有符号 ...

  9. 关于JAVA中的强制转换

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

  10. java如何强制转换_如何实现JAVA类型的强制转换

    object对象转换为String的一些总结 ----------------------------------------------------------------------------- ...

最新文章

  1. Oracle之comment关键字的详细讲解
  2. 轮椅上的博士矣晓沅:9 年求学路,我从清华毕业了
  3. 风向变了 网络安全又占股市风口
  4. SpringSecruity整合Oauth2 详解(一)
  5. 大数据之mongodb -- (2)java集成 MongoDB 3.2,使用Spring-data-mongodb进行集成
  6. Android 系统(90)---JIT 编译器
  7. linux-3.5.4内核添加新的系统调用并测试!!!!!
  8. 萌新的Python练习菜鸟100例(八)输出 9*9 乘法口诀表
  9. SWUST OJ(953)
  10. 维宏v8系列卡win7/win10 64位驱动
  11. 【硬件】详解电流采样电路
  12. HEVC: I帧、P帧及B帧
  13. word里面的表格调整行高技巧
  14. 粉丝福利!Matlab自动配色神器ColorForFans
  15. sdkd2019.3.20训练题目
  16. 目前国内常见医用显示器品牌
  17. 字节流与字符流(FileInputStream类和FileOutputStream类)
  18. 第三讲 外国古代密码艺术
  19. 常见的股票技术指标到底能赚钱吗?从量化交易的角度告诉你
  20. 1.1 Go语言简介

热门文章

  1. Prettier 代码格式化工具使用详解
  2. Xshell6 + Xftp6 绿色破解永久授权激活版 免安装 解压即用,最好的SSH工具(Xshell 6 plus套件)
  3. java war 反编译_war反编译成java项目
  4. 变分模态分解(VMD)-Python代码
  5. 在线教育知识付费源码,视频教程学习系统源码,网课小程序源码
  6. TP框架Queue队列使用
  7. 专家访谈:谈谈数据挖掘技术
  8. Realtek 8852BE 网卡Linux驱动
  9. Vb6 Modbus TCP通讯示例源代码
  10. JAVA 算法之穷举法