java语言支持的8种基本数据_Java语言中的8种基本数据类型间的转换

前言

类型转换是计算机中常见的操作,比如输入输出、数据相互之间的比较 等等,本篇就是介绍8种基本数据类型间相互转换的。

一、什么是数据类型的转换?

数据类型转换就是把一种数据类型转换成其他的数据类型,如:在计算1+2.3=3.2中,就是int类型转换为float类型,再进行运算的。

二、数据类型的转换方式

1.自动数据类型转换

自动类型转换,是指系统内部自动进行的数据类型转换,用户无需添加任何相关操作就能自动完成的数据类型转换方式。一般是指由小到大,如:整型中按字节长度byte—>short—>int—>long,浮点型的float—>double等。

1.整型间自动数据类型转换

1.byte—>short、int、long

代码如下(示例):

byte a = 10;

short b = a; // b = 10;

//byte c = b; 此时会报错,因为short类型长度为2字节,大于byte的1字节

int c = a; // c = 10

long d = a; // d = 10

//同样不可以反过来写byte e = c;原因同上1

2

3

4

5

6

2.short—>int、long

代码如下(示例):

short a = 10;

int b = a; // b = 10

long c = a; // c = 10

//同样不可以反过来写,原因是int,long类型的长度大于short1

2

3

4

3.int—>long

代码如下(示例):

int a = 10;

long b = a; // b = 10

//同样不可以反过来写,原因是long类型的长度大于int1

2

3

2.浮点型间自动数据类型转换

1.float—>double

代码如下(示例):

float a = 10.0f;

double b = a; // b = 10.0

//float c = b; 此时会报错,因为double类型的数据精度大于float1

2

3

4

3.整型—>浮点型自动数据类型转换

整型—>浮点型数据类型自动转换就是指系统自动进行的把整型的数据转换为浮点型数据再进行数据处理的过程,最典型的例子就是整数加小数得出的结果是小数,如:2 + 3.6 = 5.6。

代码如下(示例):

int i = 5;

float a = 10.0f;

float b = a + i; // b = 15.0

//int b = a + i; 此时会报错,因为float类型的数据精度大于int1

2

3

4

5

这里只给出了int类型自动转化为float类型的例子,其他的整型的数据类型与float类型间的自动类型转换的原理是一样的,就只是把数据类型从int改为byte,short,long等,整型与double类型的自动数据类型转换也是如此,就不一一列举出来了。

2.强制数据类型转换

强制数据类型转换,指的是系统无法自动进行,要靠规定的语法来实现的数据类型转换过程。

语法格式为:

需要的数据类型 变量名 = (需要的数据类型) 被转换的数据类型的数据

1.整型间强制数据类型转换

1.short、int、long—>byte

代码如下(示例):

byte a = 10;

short b = a; // b = 10;

//byte c = b; 此时会报错,因为short类型长度为2字节,大于byte的1字节

byte c = (byte)b; // c = 10

//此时,先进行强制数据类型转换,把short类型的b强制转换为byte,再赋值给c1

2

3

4

5

其他的情况与此类似,不一一列举。

2.浮点型间强制数据类型转换

1.double—>float

代码如下(示例):

double a = 10.0;

//float b = a; 报错

float c = (float)a; // c = 10.0

//此时,先进行强制数据类型转换,把double类型的a强制转换为float类型,再赋值给c1

2

3

4

3.整型与浮点型间强制数据类型转换

1.float—>int

代码如下(示例):

float a = 10.5;

//int b = a; 报错

int c = (int)a; //此时,先进行强制数据类型转换,把float类型的a强制转换为int类型,再赋值给c1

2

3

2.double—>int

代码如下(示例):

double a = 10.5;

//int b = a; 报错

int c = (int)a; //此时,先进行强制数据类型转换,把double类型的a强制转换为int类型,再赋值给c1

2

3

这一种情况与上面的float相似

浮点型转换为其他整型的情况与此类似,不一一列举。

3.char与int间数据类型转换

字符型char与int类型间有着单独的编码表使得每一个字符与一个整数对应,所以我单独拿出来说。

1.char自动转换为int

代码如下(示例):

char a = 'c';

int b = 10;

System.out.println((a+b)); //109

//因为小写字母c在ASCII编码表中对应的数为99,所以,做加法运算时,用的是c对应的数字,可以理解为系统内部进行了自动数据类型转换1

2

3

4

2.强制数据类型转换

代码如下(示例):

1911501b86545e3c662af21b96c7f0f6.png

67582a928c2efa828e054c7cbcad0c5d.png

总结

例如:以上就是今天要讲的内容,本文仅仅简单介绍了Java8种基本数据之间的数据类型转换的两种方式,给出的例子简单明了。

文章来源: blog.csdn.net,作者:ly_洛羽,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/ly_1998_/article/details/109366475

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值