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

Java的数据类型

时间:2018-09-30 22:42:35      阅读:151      评论:0      收藏:0      [点我收藏+]

标签:als   字符   构造   十六   字节   数据   报错   也会   结果   

  • 基本数据类型(Primitive Data Type):8种。

1) 整型


byte     1B     8位     -128到127 

short    2B     16位    -2^15到(2^15)-1 

int      4B     32位    -2^31到(2^31)-1 

long     8B     64位    -2^63到(2^63)-1

2) 浮点类型


float      4B      32位       

double     8B      64位

3) 字符类型


char    2B    16位

4) 布尔型 1B


boolean    false/true

注:

1、Java中的自动类型提升问题。

正向过程:从低字节到高字节可以自动转换。

byte->short->int->long->float->double

逆向过程:从高字节到低字节用强制类型转换。

例:int a = (int)4.562;

注:逆向转换将丢失精度。

2、boolean:只有true和false。

3、char:Java中用" \u四位十六进制的数字 (即使在注释中出现\u,后面如果跟的不是4个数字,也会报错)"表示将字符转换成对应的unicode编码,字符类型要用单引号括起来。

4、黙认浮点类型为double,float数据类型有一个后缀为"f"或"F"。

5、long类型有一个后缀,为"l"或者"L"。

  • 引用数据类型(Reference Type):

类、接口、数组

引用类型 变量名 = new 引用类型名(参数); //new后面一般跟的都是类的构造器

成员:写在类体括号里面的

自动类型提升:


byte a = 1;

byte b = 2;

a = a + b;      //编译出错自动类型提升成int

a += b;       //自加没有自动类型提升问题

类型自动提升规则:

a和b作某种运算:

a和b中有double,结果就是double。

a和b中有float,结果就是float。

a和b中有long,结果就是long。

除此之外,结果都是int。

把高字节转成低字节,需要作强制类型转换:byte c =(byte)a + b;

下面是数据类型图:

Java的数据类型

标签:als   字符   构造   十六   字节   数据   报错   也会   结果   

原文地址:https://www.cnblogs.com/yuyu666/p/9733444.html

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