Java变量(标识符;数据类型;变量分类)
2020-03-12 16:04:11来源:博客园 阅读 ()
Java变量
一、变量的命名
——标识符
- 标识符由数字、字母、下划线_、美元符$组成,但不能以数字开头。
- 标识符对字母大小写敏感。
- 标识符无长度限制。
- 不能以关键字作为标识符。
/* 合法的标识符: */ int amount = 17; int $apple = 8; int _index = 3; int 身高 = 180; /* 不合法的标识符: */ int float = 3.14; // 不能使用关键字 int #Index = 2; // 不能使用# int 3a = 9; // 不能以数字开头
二、变量的数据类型
——基本数据类型、引用类型
三、变量的分类
——局部变量、成员变量、静态变量
(一)局部变量:在方法内或语句块中定义,生命周期从声明处开始到方法或语句块结束处。
★ 使用局部变量前必须先声明和初始化。
public class TestVarible { public static void main(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 class TestVarible { int testValue; // 成员变量, 初始值为0 }
(三)静态变量:使用static定义的变量,生命周期伴随类始终。
★ 声明静态变量时会自动初始化,默认初始值与成员变量相同。
public class TestVarible { static double score; // 静态变量, score属于类, 初始值为0.0 boolean flag; // 成员变量, flag属于对象, 初始值为false public static void main(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 class TestVarible { public static void main(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 class TestVarible { public static void main(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范围内)
- 转义字符:'\x' (x有不同含义)
public class TestVarible { public static void main(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两个值。
【参考资料】:
变量的数据类型图片:速学堂
原文链接:https://www.cnblogs.com/bpf-1024/p/12481911.html
如有疑问请与原作者联系
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- 国外程序员整理的Java资源大全(全部是干货) 2020-06-12
- 2020年深圳中国平安各部门Java中级面试真题合集(附答案) 2020-06-11
- 2020年java就业前景 2020-06-11
- 04.Java基础语法 2020-06-11
- Java--反射(框架设计的灵魂)案例 2020-06-11
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash