码迷,mamicode.com
首页 > 编程语言 > 详细

java数据类型转换

时间:2018-07-15 21:08:53      阅读:191      评论:0      收藏:0      [点我收藏+]

标签:编译   基本数据类型   行数据   超过   类型   其他   数字   整数   操作   

数据类型有基本数据类型和引用数据类型

基本数据类型有byte、short、int、long、char、float、double以及布尔类型

占用内存字节数分别是1、4、8、16、2、4、8,布尔类型不必在意字节长度,因为不参与运算。

要点一:在程序中写下一个浮点数时,编译器默认使用double类型。

float a=45.21;

编译通不过,因为运算时45.21默认是double类型,你当成float类型进行运算,会遗失四个字节。

解决方法有两种:一.改为45.12F。    二.进行数据类型转换    float a=(float)45.12;

要点二:在程序中定义一个整数,默认在int空间进行运算,默认使用不超过int类型的长度。

int number=2147483648;  //会提示数字太大,装不下。

long number=2147483648;//一样会提示相同错误

解决办法:long number=2147483648L;

但是byte number=8;//可以进行编译,因为8可以装在byte字节空间中

byte number=128;//错误,超过byte容量空间。

要点三:运算中,如果表达式包括不同类型数值,则运算时以长度最长的类型为主。其他数值类型自动提升类型。

int a=10;

double b=a*3.14;

在这个程序中,3.14是double类型,a自动提升为double类型。

 

如果操作数都不大于int,如

short a=1;

short b=2;

short c=a+b;

上面的程序通不过编译,因为a+b是在int的空间下运行得到的结果,会遗失四个字节

解决办法:short c=(short)(a+b);

要点四:不要对浮点数进行相等性运算。

java数据类型转换

标签:编译   基本数据类型   行数据   超过   类型   其他   数字   整数   操作   

原文地址:https://www.cnblogs.com/zzuli/p/9314468.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!