变量的分类-按数据类型-Java
1. 对于每一种数据都定义了明确的具体数据类型 ( 强类型语言 ) , 在内存中分配了不同大小的内存空间
补充: 变量的分类 - 按声明的位置的不同
- 在方法体外, 类体内声明的变量的成为成员变量
- 在方法体内部声明的变量成为局部变量
-
注意: 二者在初始化值方面的异同:
同: 都有生命周期
异: 局部变量除形参外, 需显式初始化
2. 整数类型: byte、short、int、long
- Java 各整数类型有固定的表数范围和字段长度,不受具体 OS 的影响,以保证 java 程序的可移植性
- java 的整数变量默认为 int 型,声明 long 型常量须后加 ‘l’ 或者 ‘L’
- java 程序中变量通常声明声明为 int 型, 除非不足以表示较大的数,才使用 long
500M 1MB = 1024KB 1KB = 1024B B= byte ?bit ?
bit: 计算机中的最小存储单位。 byte: 计算机中基本存储单位
public class VariableTest {
public static void main(String[] args) {
int number1;
number1 = 10;
int number2;
number2 = 20;
int number3;
number3 = number1 + number2;
System.out.println("Number3 = " + number3);
int number4 = 50;
int number5 = number4 - number3;
System.out.println("Number5 = " + number5);
}
}
3. 浮点类型:float、double
-
与整数类型类似, Java 浮点类型也有固定的表数范围和字段长度,不受具体操作系统的影响
-
浮点型常量有两种表示形式:
十进制数形式:如:5.12 512.0f .512 (必须有小数点)
科学技术法形式:5.12e2 512E2 100E-2 -
float:单精度,尾数可以精确到 7 位有效数字。很多情况下,精度很难满足需求
-
Java 的浮点型常量默认为 double 型,声明 float 型变量,须后加 ‘f’’ 或 ‘F’
4. 字符类型
-
char 型数据用来表示通常意义上 “字符” (2字节)
-
Java 中的所有字符都使用 Unicode 编码,故一个字符可以存储一个字母,一个汉字,或其他书面语的一个字符。
-
字符型变量的三种表现形式:
字符常量是用单引号 (‘ ’) 括起来的单个字符。例如:
char c1 = 'a'; char c2= '中'; char c3 = '9';
Java中还允许使用转义字符‘\’来将其后的字符转变为特殊字符型常量。例如:
char c3 = ‘\n’; // '\n'表示换行符
-
char 类型是可以进行运算的。因为它都对应有 Unicode 码。
-
直接使用 Unicode 值来表示字符型常量:‘\uXXXX’。其中,XXXX代表一个十六进制整数。如:\u000a 表示 \n。
5. 布尔类型:boolean
-
boolean 类型用来判断逻辑条件,一般用于程序流程控制:
if 条件控制语句;
while 循环控制语句;
do-while 循环控制语句;
for 循环控制语句; -
boolean类型数据只允许取值true和false,无null。
不可以使用 0 或 非0 的整数替代 false 和 true,这点和C语言不同。
Java虚拟机中没有任何供 boolean 值专用的字节码指令,Java语言表达所操作的 boolean 值,在编译之后都使用 java虚拟机 中的 int 数据类型来代替:true 用 1 表示,false 用 0 表示。
6. 字符串类型:String
- String不是基本数据类型,属于引用数据类型
- 使用方式与基本数据类型一致。例如:
String str = “abcd”;
- 一个字符串可以串接另一个字符串,也可以直接串接其他类型的数据。例如:
str = str + “xyz” ; int n = 100; str = str + n;