存储变量时需要申请内存空间,但是两个不同类型的变量不通用,对于不同变量所能使用的方法也不同,所以有必要熟悉Java的变量类型。
Java中的变量的概念与App Inventor的变量概念相同。存储变量就好比我们去酒店要一个房间,我们向计算机的内存要一个空间来存储一些东西,即变量。计算机通过一个特定的地址来搜寻这一个变量,就像我们在酒店通过门牌号搜寻房间一样,但是这个地址比较复杂,不便于在编程时快速地找到需要的变量,所有就有了变量名
,相当于起个别名,让我们能够记住这个变量。例如:酒店中如果有个门牌号为02038705
,酒店内部的员工可能知道:020是广州市,3是广州区的第3分店,8705是7楼的第5个房间,但是我们就不知道了,于是我们就要给它起个别名:某某酒店天河分店的705房间,这样我们就方便寻找和记忆了。
Java分引用数据类型和内置数据类型。
内存里面可以存储各种各样的数据,我们需要告诉计算机我们需要存储的数据类型,以便计算机分配一个合适大小的空间给我们用于存储变量。9种数据类型具体关系如下表所示:
变量类型 | 说明 | 最小值 | 最大值 | 默认值 | 占用空间(单位:字节) | 示例值 |
---|---|---|---|---|---|---|
byte | 整数(可正可负) | -128(-2^7) | 127(2^7-1) | 0 | 1 | 1 |
short | 整数(可正可负) | -32768(-2^15) | 32767(2^15 - 1) | 0 | 2 | 1 |
int | 整数(可正可负) | -2,147,483,648(-2^31) | 2,147,483,647(2^31 - 1) | 0 | 4 | 1 |
long | 整数(可正可负) | -9,223,372,036,854,775,808(-2^63) | 9,223,372,036,854,775,807(2^63 -1) | 0 | 8 | 1 |
float | 32位单精度浮点数(小数) | 1.4E-45 | 3.4028235E38 | 0.0f | 4 | 3.14f |
double | 64位双精度浮点数(小数) | 4.9E-324 | 1.7976931348623157E308 | 0.0d | 8 | 3.14d |
boolean | 布尔值(true/false) | / | / | false | 1 | true |
char | 16位Unicode字符 | \u0000(即为0) | \uffff(即为65535) | 0 | 2 | 'a' |
String | 字符串 | / | / | "" | / | "你好,世界!" |
执行此处代码即可查看所有内置数据类型的最大值和最小值(均已内置在Java常量中了)。一般地,整数我们常用int类型,小数常用double类型,字符常用String类型。为了能够提高程序的运行效率,程序中如果确定某一个变量在上面所述的最大值/最小值范围之内,可以采取尽量使用占用空间少的的变量类型。
根据上文所述,不同类型的变量之间不通用,而且适用的方法也不同,现在可以通过自动类型转换将类型进行转换,从而使其适配我们的操作。
例子:将float变量转为int变量
xxxxxxxxxx
float b = 3.14;
int a = (int)b;
System.out.println(a);
将输出结果3
。自动类型转换需要注意以下几点:
在App Inventor中的变量部分,有一个“声明全局变量”或者是“初始化全局变量”,现在我们就要学习如何在Java中完成同样的操作。使用变量的过程为:声明→赋值→使用。声明的过程就是告诉计算机我征用了这个变量名单词和变量的种类,并且占用了计算机内存中的相应的空间。赋值的过程中,就是赋予这个变量一个值,即App Inventor中的设...为...
积木块。赋值使用=
进行,=
表示右边的值赋予给左边的变量。
声明/初始化变量:
xxxxxxxxxx
//变量类型 变量名;
int age;
赋值:
xxxxxxxxxx
//变量名 = 要赋予的值;
age = 2;
使用,直接使用变量名即可:
xxxxxxxxxx
System.out.println(age);
需要注意的是:String字符串必须用英文的双引号"
括起来,char字符类型必须用英文的单引号'
括起来。
声明/初始化变量的过程和赋值的过程可以合并在一起进行书写,如下所示:
xxxxxxxxxx
int age = 2;
变量名的第一个字符必须是英文字母、_
下划线或者$
美元符号,其它部分没有限制。
变量名不能与Java关键字相同,Java关键字是Java征用了的,具有特殊意义的,例如int就表示“整数”的意思,所有变量名就不能使用了。
变量名中不能出现空格/Tab缩进,不能出现特殊符号
变量名应当简单明了,有具体意义
建议使用“驼峰命名法”
该命名法采用英文单词,首单词的首字母小写,其它单词的首字母大写。该命名法同样适用于命名方法(函数)
例如:我的名字myName