- 一、Java 变量
- 二、Java 八种基本数据类型
- 2.1 基本数据类型 - int
- 2.2 基本数据类型 - long
- 2.3 基本数据类型 - double
- 2.3 基本数据类型 - boolean
- 2.3 基本数据类型 - char
- 三、基本数据类型间的转换
一、Java 变量
变量即变化的量(数),它是存储数据值的容器。在这里我们先从变量的 声明
、初始化
、访问
、命名
四个方面进行介绍。
声明变量即创建一个变量,语法格式如下。需要注意只有相同类型的变量才可以在一行代码中声明,此外已经声明过的变量不可再声明,否则会报错。
int a;
int b,c,d;
int a;
变量的初始化可以理解为变量的第一次赋值,也就是第一次存数据。语法如下,两种不同赋值方法的效果是相同的。
int a=100; int b;
b = 200;
b = 300;
变量的访问其实就是对变量的使用,但是我们使用的并不是变量本身,而是在用它所赋的值。
int a = 1;
int b = a+1;
System.out.println(b); int c = 5;
c = c+10;
System.out.println(c);
注意变量在使用之前必须先被声明并初始化。
System.out.println(a); int a;
System.out.println(a);
关于变量的命名,我们自己命名的名称统一称为标识符。标识符的命名规则如下:
- 只能用英文字母、数字、下划线和 $ 符;
- 严格区分大小写;
- 不可使用关键字命名,如 package、public、class、main、static 等等;
- 可以使用中文命名,但不建议。建议使用英文见名知意的名称,如 age、name 等。
- 推荐使用
驼峰命名法
:如 myName、myScore、MyName、MyScore。
myName 为小驼峰命名法,通常使用最广,多用于变量。
MyName 为大驼峰命名法(每个单词首字母均大写),通常用于类的命名。
二、Java 八种基本数据类型
Java 数据类型分 基本数据类型
和 引用数据类型
两种,基本数据类型又分为以下八种(除了这八种基本数据类型,其余的均为引用数据类型,引用数据类型后续讲解):
基本数据类型 | 含义 |
---|
byte | 位 |
short | 短整型 |
int | 整型 |
long | 长整型 |
float | 单精度浮点型(小数) |
double | 双精度浮点型(小数) |
boolean | 布尔型 |
char | 字符型 |
在开发过程中,所有的变量都是存储在内存中的,变量占用多大内存是则由数据类型来控制。
2.1 基本数据类型 - int
int
(整型),占四个字节,取值 -2^31 到 2^31-1。在 Java 中写的整数直接量都默认为 int 类型,但不能超出该取值范围。若整数直接量超出该范围会报编译错误;若在运算过程中超出了该范围会发生溢出,溢出并非错误但也需避免。
整数直接量:我们为变量赋值时直接写出来的整数。
int a = 1;
int b = 10000;
还应注意在 Java 中两个整数相除时,结果还是整数,小数位均会被舍弃,且不会进行四舍五入。当有小数位参与时才可保留小数。
2.2 基本数据类型 - long
long
(长整型),占八个字节,取值 -2^63 到 2^63-1。长整型直接量需要在数据之后加 L,不加 L 则该数据默认为 int 类型。
long a = 25L;
若运算时有可能溢出,建议在第一个数字后加 L。
long b = 1000000000*3*10L;
long b = 1000000000L*3*10;
2.3 基本数据类型 - double
double
(浮点型),占八个字节。在 Java 中浮点数直接量默认为 double 类型,若想表示 float 类型,需要在数字后加 F。
double a = 3.14;
double b = 3.14F;
double 和 float 型数据参与运算时,有可能会发生舍入误差,精确开发业务下不可使用。
2.3 基本数据类型 - boolean
boolean
(布尔型),占一个字节,只能赋值为 true 或 false。
boolean a = true;
boolean b = false;
2.3 基本数据类型 - char
char
(字符型),占两个字节。Java 中的 char 使用的是 Unicode 编码格式,也称万国码、统一码,是世界级通用的定长(16 位)字符集,一个字符对应一个码。表现形式为字符型 char,但本质上也是码 int。
字符型直接量必须放在单引号中,且只能有一个。
char a = '男';
char b = '6';
char c = '*'; char d = 男;
char e = '';
cgar f = '10';
在字符中有一些特殊符号需要使用 \
来转义,特殊符号如单引号(‘’)、Tab 键等。
char a = '\'';
System.out.println(a); char b = '\\';
System.out.println(b);
三、基本数据类型间的转换
数据类型之间的转换包含 自动类型转换
和 强制类型转换
。自动类型转换也称隐式转换(无需任何操作即可转换成功),通常用于小类型转到大类型。强制类型转换则与之相反,且强制转换有可能发生溢出或丢失精度。
基本数据类型从小到大依次为&#xff1a;byte <short <int <long <float <double。
int a &#61; 1;
long b &#61; a;
int c &#61; (int)b; long d &#61; 5;
double e &#61; 5; long f &#61; 10000000000L;
int g &#61; (int)f; double h &#61; 14.33223;
int i &#61; (int)h;
关于数据类型间的转换&#xff0c;需注意两点规则&#xff1a;
-
整数直接量可以直接赋值给 byte、short、char&#xff0c;但不可超出范围&#xff1b;
-
当 byte、short、char 型数据参与运算时&#xff0c;系统会先统一将其转换为 int 整型后再进行运算&#xff0c;所以这时需注意可能需要强制转换&#xff0c;否则报错。如下&#xff1a;
byte a1 &#61; 5;
byte a2 &#61; 5;
byte a3 &#61; (byte)(a1&#43;a2);