您的位置:首页 > 编程语言 > Java开发

【Java基础】变量和数据类型

2020-03-05 17:37 459 查看

变量

什么是变量?变量就是初中数学的代数的概念,例如一个简单的方程,x和y都是变量:
y = x+1
在Java中,变量分为两种:基本类型的变量和引用类型的变量。
我们先看看基本类型变量。
在Java中,变量必须先定义后使用,在定义变量的时候,可以给他一个初始值。例如:

int x=1;

上述语句定义了一个整型

int
类型的变量,名称为
x
,初始值为
1

如果不写初始值,那么
x
值取默认值。整型
int
的默认值总是0。

变量的一个重要特点是可以重新赋值。例如,对变量

x
,先赋值为
100
,再赋值
200
,观察以下代码:

public class Main {
public static void main(String[] args) {
int x = 100; // 定义int类型变量x,并赋予初始值100
System.out.println(x); // 打印x变量的值。结果为100
x = 200; // 重新赋值为200
System.out.println(x); // 打印x变量的值,结果为200
}
}

我们可以看到,第一次定义变量

x
的时候,需要指定变量类型
int
,因此使用语句
int x = 100;
,而第二次给
x
重新赋值时,使用语句为
x = 200
,这是因为
x
已经存在了,不能重新定义,不能指定变量类型
int

变量不但可以重新赋值,还可以赋值给其他变量。让我们来看一个例子:

public class Main {
public static void main(String[] args) {
int n = 100; // 定义变量n,同时赋值为100
System.out.println("n = " + n); // 打印n的值,结果为100

n = 200; // 变量n赋值为200
System.out.println("n = " + n); // 打印n的值,结果为200

int x = n; // 变量x赋值为n(n的值为200,因此赋值后x的值也是200)
System.out.println("x = " + x); // 打印x的值,结果为100

x = x + 100; // 变量x赋值为x+100(x的值为200,因此赋值后x的值是200+100=300)
System.out.println("x = " + x); // 打印x的值,结果为300
System.out.println("n = " + n); // 再次打印n的值,结果为200
}
}

我们一行一行地分析代码执行流程:

int n = 100;
,该语句定义了变量
n
,同时赋值为
100
,因此,JVM在内存中为变量
n
分配一个“存储单元”,填入值
100


执行
n = 200;
时,JVM把
200
写入变量
n
的存储单元,因此,原有的值被覆盖,现在
n
的值为
200


执行
int x = n;
时,定义了一个新的变量
x
,同时对
x
赋值,因此,JVM需要新分配一个存储单元给变量
x
,并写入和变量
n
一样的值,结果是变量
x
的值也变为
200


执行
x = x + 100;
时,JVM首先计算等式右边的值
x + 100
,结果为
300
(因为此刻x的值为
200
),然后,将结果
300
写入
x
的存储单元,因此,变量
x
最终的值变为
300


可见,变量可以反复赋值。注意,等号
=
是赋值语句
,不是数学意义上的相等,否则无法解释
x = x + 100

基本数据类型

基本数据类型是CPU可以直接运算的类型。Java定义了一下几种基本数据类型:

  • 整数类型:byte,short,int,long
  • 浮点数类型:float,double
  • 字符类型:char
  • 布尔类型:boolean
  • 点赞 1
  • 收藏
  • 分享
  • 文章举报
蕾啊蕾❁ 发布了15 篇原创文章 · 获赞 16 · 访问量 370 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐