昆明java培训
达内昆明广州春城路

18487146383

热门课程

java基本数据类型

  • 时间:2016-11-18
  • 发布:昆明Java培训
  • 来源:达内新闻

昆明Java培训机构的老师今天给同学们讲基本数据类型。

byte tt=(byte)130 等于-126。byte占一个字节,8bit。第一位是符号位,0表示正数,1表示负数。因此byte的取值范围[-128, 127]。

130的二进制是00000000000000000000000010000010,截取成byte类型只保留后8位,也就是10000010,第1位是符号位0代表正数、1代表负数,这里第一位是1也就是负数,计算机存储的负数是补码,必须将其他位取反再加1,取反加1后这个为-1111110,这个二进制数转换为整数是-126。

byte a= (byte) 0x00000111;  十六进制16*16 + 16 + 1 = 256 + 17 = 0000001 00010001。截取后8位,则a = 17。

byte c = (byte)0xFF; 十六进制15*16 + 15 = 255 = 11111111,最前面1表示负数,存储的是补码,后面7位取反加1等于1,则c = -1。  System.out.println(c); 输入-1。

八进制必须以0开头,十进制不能以0开头(0除外)。

byte a= 00000111; 八进制64 + 8 + 1,则a = 73。

byte a= (byte)00001111;八进制8*8*8 + 64 + 8 + 1 = 00000010 01001001,转换成byte,取后8位,则a = 73。  byte a= 00001111,会报错超出范围[-128,127]。

byte占8位。short占16位,取值范围[-32768, 32767]

short s1 = 1; s1 = s1 + 1;会报错,因为1是int类型,计算结果是int类型,需要强制转换成short类型,写成 s1 = (short)(s1 + 1); 或者s1 += 1;此种写法含有隐式的强制类型转换。相当于(short)(s1 + 1) 

int类型在内存中占32位,4个字节。取值范围[-2147483648, 2147483647]。

2^31 = 2147483648

long型如果赋值超出int型的范围,则需要在数字后加上L或l。表示该值是长整型。

long n = 2147483650L + 4;则n值是2147483654。

long m = (long)(2147483647 + 4); 计算过程:2147483647存储是:01111111 11111111 11111111 11111111加上00000000 00000000 00000000 00000100等于10000000 00000000 00000000 00000011。

前面的1表示负数。负数存储的是补码,将其他位取反加1。源码是11111111 11111111 11111111 11111101。则m等于-(2^32-1-2)= -2147483645。

了解详情请登陆昆明达内Java培训官网(km.Java.tedu.cn)!

上一篇:java中的八种基本数据类型
下一篇:eclipse中的代码提示功能

昆明java培训机构:java未来的发展走向

昆明java培训机构:java学完可以干什么!

昆明java培训机构:如何搞定BAT和华为offer?有这份攻略就够了!

昆明java培训机构:学Java别担心枯燥和无聊

选择城市和中心
贵州省

广西省

海南省

扫一扫

了解更多干货