目录
前言
前面我们学习了Java里《识别符-关键字》的概念,以及一些语法上的要求。这次呢笔者带大家了解一下什么是变量、常量?变量和常量的区别?什么时候我们要使用变量什么时候我们该使用常量呢?让我们带着疑惑,继续往下看吧
一、变量(Variable)
1、 什么是变量?
其实就是在JAVA中,有些数据的值是不固定的,总是在改变,我们还需要记录这些值,其实这里我们可以把这些值理解为变量。
变量指的是在内存中开辟的一块存储空间,用于存放运算过程中获取的数据。如下图:
2、如何声明变量/定义变量(重点)
2.1、环境准备
打开我们的eclipse创建项目创建一个新的项目(如果这里不知道怎么操作请看《Java程序入门案例-HelloWorld》的1.1至1.5部分)
创建main方法
创建好之后的显示效果是这样的,这里有想了解含义的朋友们可以去看:《Java程序入门案例-HelloWorld详解》这里有具体说明每个参数的作用
2.2、方式一
先声明,后赋值
格式:变量类型 变量名; //注意不要忘了分号
例子:
int a1; //声明一个int类型的变量,名字为a1
a1 = 100; //为变量a1赋值100
int a2,a3; //声明两个int类型的变量,名字分别为a2和a3
a2 = 123; //为变量a2赋值123
a3 = 456; //为变量a3赋值456
2.3、方式二
声明变量的同时为变量赋值
格式:变量类型 变量名 = 变量值; //注意不要忘了分号
例子:
int b1 = 3; //声明一个int类型的变量,名字为b1,并为变量b1赋值3
b1 = 4; //修改b1的变量值为4
int b2 = 4; //声明一个int类型的变量,名字为b2,并为变量b2赋值4
int b3 = b1+b2; //声明一个int类型的变量,名字为b3,并为变量b2赋值b1+b2的和也就是(4+4)
其中变量b1、b2、b3只在内存中占用三块用于存储整数的存储空间,分别用于存储两个整数,以及和两个整数运算的和
二、常量
1、什么是常量?
常量代表程序在执行过程中不能被改变的数据,例如我们的身份证、性别等...
我们可以把他理解为一种特殊的变量,只不过他得知被设定后,在程序运行的过程中不允许被改变。
其中,final 是定义常量的关键字,int指明常量的数据类型,AGE是变量的名称,22是初始值。
final 关键字表示最终的,它可以修改很多元素,修饰变量就变成了常量
注意!!常量名一般使用大写字符。
2、常量在程序运行过程中的主要作用
1)代表常数,便于程序的修改(例如:圆周率)
2)增强程序的可读性
3)提高代码的可维护性,例如我们定义一个SEX常量赋值为“女”,在需要指定用户性别的地方直接使用即可,可以避免由于用户的不规范赋值导致程序的出错
3、如何声明常量/定义常量
方式一:先声明,后赋值
final int AGE; //声明一个int类型的常量,名字为AGE
AGE = 22; //为常量AGE赋值22
final int A1,A2;//声明两个int类型的常量,名字为A1和A2
A1 = 20; //为常量A1赋值20
A2 = 21; //为常量A2赋值21
方式二:声明变量的同时为变量赋值
final int A3 = 20; //声明一个int类型的常量,名字为A3,并赋值为20
System.out.println(A3); //打印结果为20
final int A4 = A3 + 100; //声明一个int类型的常量名字为A4,且赋值为(A3的值+100)
System.out.println(A4); //A4的打印结果为120
三、AFQ
1、变量的注意事项
注意事项一:未经声明的变量不能使用
Java语言语法规定,变量使用之前必须声明变量,否则会编译错误(“xx cannot be resolved to a variable” 翻译过来就是 “xx变量未被声明,需要声明后才可以使用”)
注意:在大部分情况下,变量没有声明是因为拼写错误造成的!
注意事项二:拼写数据类型错误
我们声明变量的时候需要定义数据类型(后面会讲到),如果出现拼写错误也会报错("xxx cannot be resolved to a type" 翻译过来就是 “无法将xxx解析为类型,表示数据类型不正确” )
注意事项三:变量的命名要符合标识符语法要求。可参考JAVA程序入门--基础知识《标识符-关键字》
a)除此之外,变量的命名应进来做到见名之意,要遵循驼峰命名法。
驼峰命名法:即如果变量的名字由多个单词组成,除第一个单词外,其他单词的首字母需大写,其余的字母小写
例如:alary、studentName、studentParentName等。
b)中文可以作为变量名,之前有说过不建议使用中文作为标识符
注意事项四:变量的访问是指对变量值的访问,可以获取变量值,也可以未变量重新赋值
例如
int a = 100;
System.out.println(a); //打印结果为:100
a = a + 100; //因变量a中的值加上100(100+100)把所有的结果重新赋值给了a,所以a的变量值就变成了200
System.out.println(a); //打印结果为:200
2、常量的注意事项
注意事项:常量值赋值后,是不可以二次赋值
常量的值和变量不同,常量的值是不可以进行二次赋值的,也就是说。我定义并第一次赋值以后,接下来就不可以对常量进行赋值了。否则就会报错,如下图:
final int A3 = 20;
A3 = 20; //编译错误,The final local variable A3 cannot be assigned. It must be blank and not using a compound assignment
A3 = A3 + 100; //编译错误,The final local variable A3 cannot be assigned. It must be blank and not using a compound assignment
小提问:JAVA常量不能被二次赋值与常量值不能被修改意思一样吗?
笔者感觉这个是一个误区,很多人都感觉常量值是不能被修改的,但是通过上面代码可以看到我的"A3 = 20;"处报错了,如果常量值不能被修改这种说法是正确的,那么代码中的A3并没有进行修改,就不应该报错。因此常量不能被修改值的说法是错误的。
此次笔者就写到这里,有什么疑问或者有什么建议可以评论区告诉我,谢谢大家的支持!!!