java类型标识符_Java变量(标识符;数据类型;变量分类)

Java变量

一、变量的命名

——标识符

标识符由数字、字母、下划线_、美元符$组成,但不能以数字开头。

标识符对字母大小写敏感。

标识符无长度限制。

不能以

/*合法的标识符:*/

int amount = 17;int $apple = 8;int _index = 3;int 身高 = 180;/*不合法的标识符:*/

int float = 3.14; //不能使用关键字

int #Index = 2; //不能使用#

int 3a = 9; //不能以数字开头

二、变量的数据类型

——基本数据类型、引用类型

bfe5f6ee90db3feed435201e3d0f1517.png

三、变量的分类

——局部变量、成员变量、静态变量

(一)局部变量:在方法内或语句块中定义,生命周期从声明处开始到方法或语句块结束处。

★ 使用局部变量前必须先声明和初始化。

public classTestVarible {public static voidmain(String args[]) {

{int age; //age是局部变量,只属于本语句块

System.out.printf("age = %d", age); //编译出错, age没有初始化

}

age= 18; //编译出错, age没定义

}

}

(二)成员变量:在方法外部、类的内部定义的变量,生命周期伴随对象始终。

★ 声明成员变量时会自动初始化,默认初始值见下表:

默认初始值

数据类型

初始值

int

0

char

'\u0000'

double

0.0

boolean

false

public classTestVarible {int testValue; //成员变量, 初始值为0

}

(三)静态变量:使用static定义的变量,生命周期伴随类始终。

★ 声明静态变量时会自动初始化,默认初始值与成员变量相同。

public classTestVarible {static double score; //静态变量, score属于类, 初始值为0.0

boolean flag; //成员变量, flag属于对象, 初始值为false

public static voidmain(String args[]) {

{int age; //局部变量, age只属于本语句块

age = 17;

}int fighting = 88; //局部变量,fighting属于方法

}

}

四、变量、常变量

——声明、初始化

★ 常变量与变量的唯一区别是:常变量初始化后不可再改变。

数据类型 变量名; // 变量声明

final 数据类型 变量名; // 常变量声明

变量名 = 值; // 变量初始化

★ 初始化变量时,整数默认为int类型,浮点数默认为double类型。

五、基本数据类型

——boolean、byte、short、char、int、long、float、double

★ 低范围变量可赋值给高范围变量,超出范围时需加转换!

(一)整型:byte、short、int、long

1. 基本信息

数据类型

占用内存

表示范围

定义

byte

1字节

-128~127

-

short

2字节

-32768~32767

-

int

4字节

约21亿

-

long

8字节

-263~263-1

在末尾增加'L'或'l'

2. 表示形式

10进制:-

16进制:以0x或0X开头

8进制:以0开头

2进制:以0b或0B开头

public classTestVarible {public static voidmain(String args[]) {/*正确的声明和初始化*/

int a = 320000;int b = '对';long c =a;long d = 3200000000L; //数值超出21亿, 需要增加转换:在末尾加上"L"或"l"

/*非法的初始化*/

byte e = 128; //超出范围

unsigned int f = 200; //不存在unsigned

}

}

(二)浮点型:float、double

1. 基本信息

数据类型

占用内存

表示范围

定义

float

4字节

-3.403E38~3.403E38

在末尾增加'F'或'f'

double

8字节

-1.798E308~1.798E308

在末尾增加'D'或'd'

2. 表示形式

10进制:-

科学计数法:aEb或aeb (a为实数,b为整数)

public classTestVarible {public static voidmain(String args[]) {/*正确的声明和初始化*/

float a = 3.14F;float b = (int)6.89;float c = 0x0123; //0x0123=291, 在21亿范围内

/*非法的初始化*/

float d = 1e4; //编译错误, 1e4为double型

float e = 3.03d; //编译错误, 3.03d为double型

/*float型与double型最好不要进行比较*/

float m = 0.1f;double n = 0.1;

System.out.println(m==n); //输出为false

}

}

(三)字符型:char

1. 基本信息

char类型占2字节,使用Unicode编码形式,其表示范围是0~65535。

2. 表示形式

字符常量:'x'

16进制:'\uxxxx' (x在0~f范围内)

public classTestVarible {public static voidmain(String args[]) {/*正确的声明和初始化*/

char a = '步';char b = 24179;char c = '\u51e1';

System.out.printf("%c%c%c", a, b, c);/*非法的初始化*/

char d = '\uabcg'; //g超出0~f范围

int e = 'a';char f = e; //e为int型, 高于char类型

}

}

(四)布尔型:boolean

boolean类型占1位(1bit),只有true和false两个值。

【参考资料】:

变量的数据类型图片:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值