Java数据类型转换

数据类型分类

Java语言是强类型语言,意思是每个变量和每个表达式都有一个在编译时就确定的类型,所以所有变量必须显示声明类型,也就是说,所有的变量必须先声明,后使用。
Java语言支持的类型分为两类:基本类型和引用类型。
基本类型包括boolean类型和数值类型。数值类型有整数类型和浮点类型。整数类型包括byte,short,int,long,char.浮点类型包括float和double.(有时候也把char型称为字符型,实际上字符型也是一种整数型)。
引用类型包括类,接口和数组实例,还有一种特殊的null类型。

基本类型的类型转换

当把一个表数范围小的数值或变量直接赋给另一个表数范围大的变量时,系统可以进行自动类型转换。自动转换类型图如下:
Java数据类型转换_第1张图片
当把任何基本类型的值和字符串进行拼接的时候,基本类型的值将自动转换为字符串类型,虽然字符串类型不再是基本类型,而是引用类型。

强制类型转换

如果希望把上图中箭头右边的类型转换为左边的类型,则必须使用强制类型转换,强制类型转换的语法格式是:(targetType)value.强制类型转换有可能会造成数据丢失。

表达式类型的自动提升

当一个算术表达式包含多个基本类型的值时,整个算术表达式的数据类型将会发生自动提升。Java定义如下的自动提升规则:

  • 所有byte,short,char型将被提升到int型。
  • 整个算术表达式的数据类型自动提升到与表达式中最高等级操作数同样的类型

你可能感兴趣的:(java)