【JAVA】数据类型及变量

avatar
作者
猴君
阅读量:0

🎉欢迎大家收看,请多多支持🌹

🥰关注小哇,和我一起成长🚀个人主页🚀


 Java的数据类型

可以分为两类,基本数据类型引用数据类型

基本数据类型有4类8种,4类分别是整型 浮点型 字符型 布尔型,

8种是byte、short、int、long、double、char、boolean

8种基本数据类型
字节型byte内存占用1字节
短整型short2字节
整型int4字节
长整型long8字节
单精度浮点型float4字节
双精度浮点型double8字节
字符型char2字节
布尔型boolean无明确规定

在Java中数据类型大小固定,这与c中不同

整型

整型默认为int,int 的包装类型是Integer,int类型所能表示的数据范围:

//打印最大值和最小值

System.Out.println(Integer.MAX_VALUE);

System.Out.println(Integer.MIN_VALUE);

short、byte、long的包装类型都是将首字母大写,最大值都是 包装类型.MAX_VALUE,最小值都是 包装类型.MIN_VALUE。

long类型的数字后要加L或l,一般写大写L(与1区分)。

浮点型

浮点数的存储方式与在C语言中的存储方式相同。浮点型默认为double,单精度浮点数在后面加f或F。

字符型

char占两个字节,包装类型为Character。

与C语言中用ASCII码值来表示字符不同,Java中用Unicode表示字符。计算机中的字符本质仍是数字。

布尔型

只有两种取值,false表示假和true表示真,与C语言中不同的是,Java中不能用0表示假,非0表示真。包装类型为Boolean。

类型转换

分为自动类型转换(隐式)和强制类型转换(显式)。

自动类型转换的特点是:数据范围小的转为数据范围大的时会自动进行

int a = 10; long b = 5L; a=b;//编译报错,long的范围比int大,会丢失数据 b=a;//将int的a转换为long类型 

强制类型转换特点:将范围大的类型赋给范围小的,可能有精度丢失

类型提升

类型不同的数据间进行运算时,类型小的数据会提升为类型大的数据

int和long之间:

int a = 3;

long b = 4;

int c = a + b;//编译报错,a+b时a提升为long类型,结果也为long类型,赋给int可能会丢失数据

long d = a + b;//编译成功

对于short, byte 这种比4个字节小的类型, 会先提升成4个字节的int , 再运算 :

byte a = 3;

byte b = 2;

byte c = a+b;//报错,int类型范围比byte大

字符串类型

java中用String类来定义字符串 ,可以用+来拼接两个字符串

String a = "Hello,"; String b = "welcome to my blog."; System.out.println(a); System.out.println(b); System.out.println(a+b);

打印结果: 

 

int类型转换成String类型:

int a = 6; //法一 String s1 = a+""; //法二 String s2 = String.valueOf(s1);

这两种方法也适用于其它基本数据类型和它们的包装类型转换成String类型。

String类型转换成int:

String str = "100"; int b = Integer.parseInt(str); System.out.println(b);//打印100 String str2 = "A"; int c = Integer.parseInt(str2,16);//第二个参数用于解析字符串的进制 System.out.println(c);//打印10

 


 

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!