频道栏目
首页 > 资讯 > Java > 正文

java数据类型

17-07-19        来源:[db:作者]  
收藏   我要投稿
java数据类型,数据类型(数值型的数据范围表示规则如下:整数的范围都是-2?-1~2?﹣1-1
*和C、C++不同,Java中没有无符号的整数,而且明确规定了各种数据所占内存字节数,保证了数据类型的长度与平台的无关性
boolean(true、false)
byte(1字节 -128~127)
short(2字节 -32768~32767)
char(2字节,Unicode码和ASCII码是兼容的,如字母a的ASCII吗为0x61,则对应的Unicode码就是0x0061)
int(4字节 -2147483648~2147483647)
float(4字节±3.4*10^38)
long(8字节)
double(8字节 ±1.8*10^308)

整数的最大值+1,得到的值都是负的最小值  如byte类型的127+1就会变成-128。

字符型数据在内存中的存储方式:将一个字符存储到内存中,实际是将该字符的Unicode码存放到内存单元中,如字符A的的Unicode码为0x0061,它会以二进制的形式存放到内存中,java将字符变量作为无符号的短整型数据来处理的,所以java中的字符数据和整形数据之间可以通用,可以对字符型数据进行算数运算。
如: 
char ch = 65;
char c = 1;
ch = ch + 1;//在eclipse中编译不过,因为ch+1时会将数据自动向上转化为int类型,而后又直接赋值给char类型,所以程序会报错
ch = (char) ch + 1;
System.out.println(ch);//输出B
System.out.println(ch+c);//这句也自动转成int了,估计是只要进行加减运算就默认转成int了。输出67
System.out.println(ch+1);//输出67


//大写字母转小写
char ch = 'A';
ch = (char)(ch + 32);
System.out.println(ch)//输出a

各个数据类初始化不给值时的默认值:除了boolean是false,字符是'\u0000'以外,其余的类型都是对应值的0。

数据类型转换一般有两种:扩展转换和缩减转换
扩展转换:小转大,一般不需要程序员干预。
缩减转换:大转小,需要强制转换,有可能会损失精度或者超出范围而得到意料之外的值。

亦或(不同为1):如位运算交换两个变量的值
int a=3,b=5;
a = a^b;
b = a^b;
a = a^b;
System.out.println(a+"\t"+b);

//方式2
a = a + b;
b = a - b;
a = a - b;
相关TAG标签
上一篇:debian服务器解决中文安装后出现乱码的问题
下一篇:Java运算符
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站