java中八种数据类型

1.八种基本数据类型

八种基本数据类型包括:byte,short,int,long,double,float,Boolean,char

  • byte:字节型:用于存储整数,占1个字节,范围-128-127
  • short:短整型:用于存储整数的,占2个字节,范围-32768到32767
  • int:最常用整型:用于存储整数的,占用4个字节,范围-2^31到2^31-1
  • long:长整型:用于存储较大的整数,占用8个字节,范围-2^62到2^62-1
  • float:单精度浮点数:用于存储小数的,占用4个字节,不能表示精确的值
  • double:双精度浮点数,最常用的存储小数的类型,占用8个字节,不能表示精确的值
  • boolean:布尔型,用于存储true和false,占用1个字节
  • char:字符型,采用的是Unicode的字符编码格式,存储单个字符,占用两个字节

对于int型

  1. 整数直接默认为int型,但是不能超出它的范围,若超出范围则发生编译错误
  2. 两个整数相除,结果还是整数,小数无条件舍弃(不会四舍五入)
  3. 运算时,若超出范围则发生溢出,虽然溢出不是错误,但是需要避免

对于long型

  1. 长整形直接量需要在后面加L或l
  2. 运算时若有可能发生溢出,建议在第1个数字后面加L
long e=10000000000L*10
long g=10000000000*10L
System.out.println(e);
System.out.printle(g);
//上述两种答案是不一样的,g则是发生了溢出

对于double浮点型

  1. 浮点型直接连默认为double类型,若想便是float,需要在数字后面加F或f
  2. double和float型数据参加运算时,有可能会发生舍如误差,精确场合不能使用

对于boolean型

只能存储true或false,对于它的定义,我们只能如下:

boolean a=true;
boolean b=false;
boolean c=5;//编译错误,只能存储true或false

对于char

  1. 采用的是Unicode编码格式,一个字符对应一个码
  2. 表现的形式是字符char,但本质上是int(0到65535)
  3. 字符直接量必须放在单引号中,只能有一个
  4. 特殊符号需要通过\来转义
char c1='女';//字符女
char c2='f';//字符f
char c3=65;//A
char c4='A';//65
char c5='';//编译错误,不能为空
//特殊符号需要通过\来转义(转义符号)
char c6='\\';//\

对于他们之间的装换

转换有两种方式:

  1. 自动/隐式类型转换:小类型转为大类型
  2. 强制类型装换:大类型转为小类型

语法:

数据类型 变量=(要转换成为的数据类型)变量

注意:

强制有可能溢出或丢失精度.

int a=5;
long b=a;//自动类型装换,小数据类型转换为大数据类型,int型转换为long型
long d=5;//这也算自动转换
double e=5;
//强制类型转换,大数据类型装换为小数据类型,long型装换为int型
long b=(int)a;
long l=100000000000L;
int g=(int)f;//这里虽然进行了强制装换,但是发送了数据溢出
double h=3.1415
int i=(int)h;//这里进行了强制的转换,但是丢失了精度.

所以我们数据转换有两点规则

  1. 整数直接量可以给byte,short,char赋值,但是不能超出范围.
  2. byte,short,char类型数据参与运算时,系统会自动装换为int再运算
byte b1=5;
byte b2=5;
byte b3=(byte)(b1+b2);//因为系统会自动转换为int再运算
int a='刘';//此时输出的是'刘'对应的码
System.out.printlen(2+'2');//52,2加上'2'对应的码50;

注:基本数据类型从小到大

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

你可能感兴趣的:(java语言基础,java)