1.8 变量和常量
在初中代数的时候,我们就学习了变量。变量的作用是把具体的数值抽象,没有变量其实就无所谓程序了。例如使用一个软件或者app,需要登录,那么这个用户名就是一个变量,密码也是一个变量。用户输入的账号和密码会分别保存到两个变量里。
变量是编程语言里保存数据的最小单元。
Java里面的变量和代数里面的变量类似,但稍有不同。Java里面的变量的特点是:
特点一:变量是有类型的;
特点二:变量必须定义之后才能使用;变量不能重复定义;
特点三:变量必须初始化才能使用。
什么叫做变量的定义?变量的定义就是说明这个变量的类型,同时在内存中分配一个位置来保存变量的值,即使这个变量目前还没有赋值。例如:
int i;
int a=9;
变量的初始化,其实就是第一次给变量赋值。通常来说,可以把变量的定义和变量的初始化写在一起,也就是”int
a=9”这样的写法。前面的int代表了a是一个整数类型的变量,后面的a=9把这个整数变量a初始化为9,我们称之为:“把整数9赋给变量a”。
和变量相对应的,就是常量了,常量是指不变的值,例如上面的数字9就是常量,或者第一个程序里面的"hello
world"就是一个字符串常量,下面的章节会介绍字符串类型,现在我们只需要知道字符串就是若干个字符,它必须由双引号"包裹着。
和变量相比,常量计算有比较大的局限性,例如a+b,a和b都是变量,只要a和b赋予不同的值,可以计算的加法不可胜数,而3+5这样的常量计算,只能这一个,如果要修改,只能修改代码。我们把这类叫做硬编码。简单理解就是不容易适应变化的代码。
常量可以用一个符号来定义,例如NUM=9这样,这个NUM的值就是9,不能再更改了,java有语法可以达到这个约束,如果给常量进行第二次赋值,会有语法错误无法执行。第二章中的符号常量有具体的语法。