《Java和Android开发学习指南(第2版)》—— 2.4 变量

    xiaoxiao2024-03-15  125

    本节书摘来异步社区《Java和Android开发学习指南(第2版)》一书中的第2章,第2.4节,作者:【加】Budi Kurniawan,更多章节内容可以访问云栖社区“异步社区”公众号查看。

    2.4 变量

    变量是数据占位符。Java是一种强类型的语言,因此,每个变量必须有一个声明的类型。Java中有两种数据类型:

    引用类型一个引用类型的变量,提供对一个对象的引用。基本类型一个基本类型的变量,保存一个基本类型。 Java如何存储整数值

    你一定听说过计算机使用二进制数字,即只包含0和1的数字。本节对此提供了一个概要,当你学习操作符的时候可能用的上。

    一个字节占8个位,这表示要分配8个位来存储一个字节。最左边的位是一个符号位。0表示正值,1表示负值。0000 0000是0的字节表示,0000 0001表示1,0000 00010表示2,0000 0011表示3,并且0111 1111表示127,127是byte所能保存的最大的正值。

    那么,如何得到一个负数的二进制表示呢?很简单。先获取其对应的正数的二进制表示,然后将所有的位都取反,并且加上1。例如,要得到−3的二进制表示,首先从3开始,它是0000 0011。将所有的位都取反,得到

    1111 1100

    加1以后,得到

    1111 1101

    这就是−3的二进制表示。

    对于int类型,规则是相同的。例如,最左边的是符号位。唯一的区别是,一个int类型占32位。要表示一个int类型中的−1的二进制形式,我们从1开始,它是

    0000 0000 0000 0000 0000 0000 0000 0001

    将所有的位都取反后,得到:

    1111 1111 1111 1111 1111 1111 1111 1110

    加1以后,得到了想要的数字(−1)。

    1111 1111 1111 1111 1111 1111 1111 1111除了数据类型,Java变量还有名称和标识符。在选择标识符的时候,有如下几条规则:

    1.标识符是Java字母和数字的一个长度没有限制的序列。标识符必须以一个Java字母开头。

    2.标识符必须不是Java关键字(表2.3中给出),不能是一个布尔字面值,也不能是空字面值。

    3.标识符必须在其作用域内是唯一的。第4章将会介绍作用域。

    Java字母和Java数字

    Java字母包括大写的和小写的ASCII Latin字母A到Z(u0041-u005a,注意,u表示一个Unicode字符)和a到z(u0061-u007a),由于历史的原因,还包括ASCII下划线(_或u005f)和美元符号($或u0024)。$字符只能在机器生成的源代码中使用,极少数情况下,用来访问遗留系统中已经存在的名称。

    Java数字包括ASCII数字0~9(u0030-u0039)。

    以下是一些合法的标识符:

    salary x2 _x3 row_count

    以下是一些不合法的标识符:

    2x java+variable

    2x不合法,是因为它以数字开头;java+variable不合法,是因为它包含加号。

    还要注意,标识符的名称是区分大小写的。x2和X2是两个不同的标识符。

    你可以这样声明一个变量:先写类型,后面跟着名称加上一个分号。如下是变量声明的几个例子:

    byte x; int rowCount; char c;

    在上面的例子中,我们声明了3个变量:

    byte类型的变量x。int类型的变量rowCount。char类型的变量c。x、rowCount和c是变量名或标识符。

    还可以在同一行声明具有相同类型的多个变量,两个变量之间用逗号隔开。例如:

    int a, b;

    这等同于:

    int a; int b;

    然而,在同一行声明多个变量的做法,我们不推荐,因为这降低了程序的可读性。

    最后,可以在声明一个变量的同时给变量赋一个值:

    byte x = 12; int rowCount = 1000; char c = 'x';

    变量的命名惯例变量名应该简短而有含义。它们应该是混合大小写的且以小写字母开头。后续的单词都以一个大写的字母开头。变量名不应该使用下划线_或美元符号$开头。例如,如下是与Sun的编码惯例一致的几个变量名的例子:userName、count和firstTimeLogin。

    相关资源:Android开发权威指南(第一版扫描版).李宁.pdf
    最新回复(0)