java基础

Java中的数据类型

Java语言是强类型语言,对于每一种数据都定义了明确的具体数据类型,在内存中分配了不同大小的内存空间。


*注:整数默认:int  小数默认:double


l  自动类型转换

      Java所有的数值型变量可以相互转换,如果系统支持把某种基本类型的值直接赋给另一种基本类型变量,则这种方式被称为自动类型转换

      范围小的可以向范围大的进行自动类型转型转换

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

l  强制类型转换

     将箭头右边的类型转换为左边的类型,则必须进行强制转换

     注意:把一个浮点数强制转换为整数时,Java将直接截断浮点数的小数部分,只取其整数部分

*注:布尔类型不可转换成其他类型

错误演示:

byte b = 3;

b = b + 2;//编译是出现错误

原因:java是强类型语言 b+2 会自动转换为int类型,无法赋值给为byte类型的b  此时需要强制转换

修改:b = (byte) (b + 2);

 

*注:char类型可进行运算,因为有对应的ASCII数值

 

综合讲解:

int i1=123;int i2=456;

double d1=(i1+i2)*1.2; //系统将转换为double型运算

float f1=(float)((i1+i2)*1.2);  //需要加强制转换符

byte b1=1;byte b2=2;

byte b3=(byte)(b1+b2); //系统将转换为int型运算,需要强制转换符

double d2=1e200;             //1*10200次方

float f2=(float)d2;            //会产生溢出float最多只能1038次方

System.out.println(f2);        //Infinity double对于float来说就是无限大

float f3=1.23f;//必须加f

long l1=123;

long l2=30000000L;//必须加l

float f=l1+l2+f3; //系统转换为float型计算

long l=(long)f;   //强制转换会舍去小数部分不是四舍五入

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值