Java入门——数据类型、自动类型转换、强制类型转换

目录

数据类型

基本数据类型

自动类型转换

 表达式的自动类型转换

强制类型转换


计算机中表示数据的最小单元

  • 计算机中表示数据的最小单元:一个字节byte,简称B,是使用8个二进制位组成的)
  • 字节中的每个二进制位就称为位(bit,简称b),1B=8b

十进制转二进制

  • 除二取余法

字符在计算机中的存储方式

  • 采用ASCII编码存储
  • ASCII编码表:即美国信息交换标准编码,规定了现代英语、数字字符、和其他西欧字符对应的数字编号。
char ch = 'a' ;

记住常用的A65) ~Za97)~z048)~9

图片数据-彩色图

  • 图片就是无数个像素点组成的
  • 每个像素点的数据:用0~255*255*255表示其颜色

声音数据本质上也是由二进制的形式进行存储的 

数据类型

基本数据类型

  • 基本数据类型:4大类8种。
数据类型内存占用(字节数)数据范围
整型byte1-128~127
short2-32768~32767
int(默认)4-2147483648~2147483647(10位数,大概21亿多)
long8-9223372036854775808~9223372036854775807(19位数)
浮点型(小数)float41.401298E-45到3.4028235E+38
double(默认)84.9000000 E-324到1.797693 E+308
字符型char20-65535
布尔型boolean1true, false

注意:任意写一个整型字面量,要使它为long类型,则需要在后面加上L(默认为int);而要使小数字面量类型为float,则在后面加上F(默认为double)。 

  • 引用数据类型  ——  String  (后续再详解)

自动类型转换

  • 类型范围小的变量,可以直接赋值类型范围大的变量。

byte -> int

自动转换类型的其他形式

 表达式的自动类型转换

  • 在表达式中,小范围类型的变量,会自动转换成表达式中较大范围的类型,再参与运算。

byte 、short、char  →  int  →  long  →  float  →  double

注意: 

  • 表达式的最终结果类型由表达式中的最高类型决定
  • 在表达式中,byte、short、char直接转换成int类型参与运算的。

强制类型转换

类型范围大的数据或者变量,直接赋值给类型范围小的变量,会报错。

int a = 20;
byte b = a; //会报错

强制类型转换

强行将类型范围大的变量、数据赋值给类型范围小的变量。

数据类型 变量2  =  (数据类型)变量1、数据 ;

int a = 20;
byte b = (byte) a;

执行原理

  • 强制类型转换可能造成数据(丢失)溢出
  • 浮点型强转成整型,直接丢掉小数部分,保留整数部分返回

END


学习自:黑马程序员——JavaSE入门课程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值