二、变量
2.1、关键字与保留字
关键字
定义:赋予特殊含义,用做专门用途的字符串
特点:关键字的所有字母都为
小写
保留字(reserved word)
现有Java版本尚未使用,但以后版本可能会作为关键字使用。自己命名标识符时要避免使用这些保留字。如:goto 、 const
2.2、标识符
标识符的使用
1、标识符:凡是自己可以起名字的地方都叫标识符。 比如:类名、变量名、方法名、接口名、包名...
2、标识符的命名规则:
由26个英文字母大小写,0-9,_ 或 $ 组成
数字不可以开头。
不可以使用关键字和保留字,但能包含关键字和保留字。
Java中严格区分大小写,长度无限制。
标识符不能包含空格。
3、Java中的名称命名规范:
包名
:多单词组成时所有字母都小写
:xxxyyyzzz
类名、接口名
:多单词组成时,所有单词的首字母大写
:XxxYyyZzz
变量名、方法名
:多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首字母大写:xxxYyyZzz
常量名
:所有字母都大写
。多单词时每个单词用下划线连接: XXX_YYY_ZZZ
2.3、变量
变量的包含变量类型
、变量名
和存储的值
:定义变量的格式: 数据类型 变量名 = 变量值
String myName = "Arbicoral";
System.out.println(myName);
变量的作用:在内存中保存数据
注意:
Java中每个变量必须
先声明,后使用
使用变量名来访问这块区域的数据
变量的作用域:其定义所在的一对{}内
2.3.1、数据类型
7种基本数据类型:byte、 short、 int 、long、 float、 double、 char、 boolean
3种引用数据类型:class、 interface、 array
整型的常量,默认类型是 :int
浮点型的常量,默认类型为:double
2.3.1.1、成员变量和局部变量
在方法体外,类体内声明的变量称为成员变量;
在方法体内部声明的变量成为局部变量。
2.3.1.2、整数类型
bit : 计算机中的最小存储单位;Byte:计算机中基本存储单元。1 Byte = 8 bit
整型的常量,默认类型是 :int
2.3.1.3、浮点类型
单精度float(4字节)、 双精度double(8字节);声明 float 型变量,必须以”f“或”F“结尾
float表示数值的范围比long还大,因为一部分用来存整型,一部分用来存储小数点
浮点型的常量,默认类型为:double
E:10
2.3.1.4、字符型
1字符=2字节,用 一对
''
表示,内部只能写一个字符。a=97;A=65
表示方式:
1、声明一个字符;
2、转义字符;
3、直接使用Unicede值来表示字符型常量。
char c1 = 'S';
//转义字符:换行符
char c2 = '\n';
//Unicode,十六进制
char c3 = '\u0056'; // 表示字母V
2.3.1.5、编码发展史
-
ASCⅡ
:适用范围太小。 -
Unicode
编码:无法区别Unicode和ASCⅡ,计算机无法区分三个字节表示一个符号还是分别表示三个符号。 -
UTF-8
:是一种变长的编码方式,使用1-6个字节表示一个符号,可以根据不同的符号而变化字节长度。
2.3.1.6、布尔型
只能取2个值之一:true、false;
常常在条件判断、循环结构中使用。
2.3.1.7、String
字符串属于引用数据类型
String可以是空,但是char字符型不能为空,可以加一个空格。
String可以和其他8种数据类型做运算,且运算符号是 + ,预算结果都是String
String s1 = "";
char c1 = ' ';
char c2 = ''; // 编译不通过
//*****************************
int number = 1002;
String numberStr = "学号";
String stu = numberStr + number; //+:连接运算
2.4、数据类型运算
-
自动类型提升:byte、short、char--> int--> long--> float--> double
-
当容量小的数据类型的变量与容量大的数据类型的变量做运算时,结果自动提升为容量大的数据类型。
-
特别的:
当 byte、char、short三种类型的变量做运算时,结果为 **int型**
。
-
-
强制类型转换:自动类型提升运算的逆运算。
-
需要使用强转符();
-
注意点:强制类型转换,可能导致精度损失(高-->低)。
-
说明:
当 long 型后面没有加 l或L也可以执行,没报错, 说明是一个int型转为long型,数据类型提升了
float 后面一定要加上F or f
,不加会报错,因为float-->double会有精度损失整型常量,默认类型为int型;
浮点型常量,默认类型为double型。
2.5、进制
所有数字在计算机底层都以二进制形式存在。
对于整数,有4种表示方式:
二进制(binary):0、1,满2进1,以0b或0B开头;
十进制(decimal):0~9,满10进1;
八进制(octal):0~7,满8进1,以数字0开头表示;
十六进制(hex):0~9及A~F,满16进1,以0x或0X开头表示。此处A~F不区分大小写。如:0x1AF + 1 = 0x21B0
计算机底层都以补码的方式来存储数据!
正数三码合一!
符号位:0-->正数;1-->负数
2.5.1、二进制-->十进制
2.5.2、十进制-->二进制
除2取余的逆。
2.5.3、十六进制<-->八进制
八进制/十六进制-->二进制
二进制-->八进制/十六进制