Java基本数据类型

 2022-08-27
原文地址:https://my.oschina.net/u/1051221/blog/157094

Java数据类型(基本和引用):

基本数据类型:

202208272108463511.png

1.Java字面值整数默认为int类型,小数默认为double类型,带L或l后缀的整数都是long类型,带F或f后缀的整数或小数都是float类型,带D或d后缀的整数或小数都是double类型。

2.int型的值可以赋给所有数据类型的变量,long型的值可以赋给long、float和double类型的变量,float型的值可以赋给float和double类型的变量,double型的值只能赋给double类型的变量。

3.int型的值在赋给byte和short类型变量的时候需要注意变量类型的取值范围,否则会出现编译错误。

4.如果将一个大范围或高精度的数字类型转换为一个小范围或低精度的数字类型的时候,可以使用强制类型转换,但是会出现精度损失现象。

5.运算符对基本数据类型的影响: 当使用+、-、*、/、%进行基本数据类型运算的时候,只要两个操作数中有一个是高类型,另一个也会被转换为高类型,并且结果也是高类型。数据类型的顺序由高到低依次为:double > float > long > int 。

6.所有byte、short和char类型的操作数都全部会被自动转换为int类型。  当使用+=、-=、*=、/=、%=进行基本数据类型运算的时候,运算符右边的数值将首先被强制转换成与运算符左边数值相同的类型,然后再执行运算,且运算结果与运算符左边数值类型相。

7.Java语言的类型转换规则:当赋值运算的左右操作数类型不一致时,右操作数首先转换为左操作数的类型,然后将转换结果赋值给左操作数。这一规则只允许左操作数类型的取值范围大于右操作数的取值范围,例如int类型的表达式赋值给一个float类型的变量。如果左操作数类型的取值范围小于右操作数的类型,例如将一个double类型的表达式赋值给一个int类型或者float类型的变量,则类型转换过程可能丢失部分信息,所以编译器会报告源程序有错并拒绝生成目标代码。如果确实需要用到这样的赋值运算,则必须使用显式的类型转换

展开阅读全文