文章目录
前言
我们都知道每一个语言都有着它们自己一些基础的概念,这最基础的部分便是这个数据的类型了。这些是构成语言环境的基础。还有最基本的各种量的表示,将会对这几个方面进行介绍。
一、数据类型是什么?
Java 中数据类型基本可以分成两大类:基本数据类型和引用数据类型。
1、基本数据类型
基本数据类型共分为四类八种:
(1)四类:整型、浮点型、字符型和布尔类型(boolean,这个类型在C语言中没有涉及)
(2)八种:见下表
数据类型 | 关键字 | 内存占用 | 范围大小 |
字节型 | byte | 1字节 | -128 ~ 127 |
短整型 | short | 2字节 | -32768 ~ 32767 |
整形 | int | 4字节 | - ~ - |
长整型 | long | 8字节 | - ~ - |
单精度浮点数 | float | 4字节 | |
双精度浮点数 | double | 8字节 | |
字符型 | char | 2字节 | 0 ~ 65535 |
布尔类型 | boolean | 没有明确规定 | true / false |
这里有几个需要注意的地方:
a) 不管是在16位系统中还是在32位系统中,int 都占用 4 个字节;不论是 32 位操作系统还是 64 位 long 都是 8 个字节.(这里和C语言的情况也是不同的)
b) 整型和浮点型都是带符号的!
c) 整型的默认类型是 int 类型,浮点的默认类型 double 类型.
d) 字符型属于引用类型.
注:
字节的概念:
什么是字节?字节是计算机中用来表示空间大小的一个基本单位
因为在计算机中我们使用的是二进制来表示数据,所以这些基本的单位之间存在这相互转换的关系
我们规定一个字节(Byte)相当于 8 个二进制位(bit)
让我来举个例子吧:比如说计算机或者手机中我们常说的 8 G 内存 / 16 G 内存的意思就是有 8 G / 16 G 个字节.
转换关系:
1KB = 1024 Byte ; 1 MB = 1021 KB ; 1 GB = 1024 MB.
我们可以悄悄的计算一下 8 GB 有多少个字节吧
二、常量与变量
1.常量
a) 字面常量
public class Demo{
public static void main(String[] args){
System.Out.println("Hello World!");
System.Out.println(2021);
System.Out.println(3.14159);
System.Out.println('S');
System.Out.println(true);
System.Out.println(false);
}
}
其中这些要打印出来的:Hellow World、2021、3.14159、'S'、ture、false.都算是字面常量
常量简单的来说就是在运行期间保持固定不变的量被称作常量.
b)常量的分类
(1)字符串常量:被双引号("")括起来的量,例如"1234"、"hello"、"晚安".
(2)整型常量:直接以数字形式出现的量(其中不能有小数),例如1314、520、3000.
(3)浮点数型常量:直接以小数的形式出现的量,例如3.14、6.18.
(4)字符常量:被单引号('')括起来的量,例如'S'、'9'.
(5)布尔常量:分为 true / false 两种
(6)空常量:也就是没有值的常量,用 null 表示.
2.变量
2.1 变量的概念
在计算机中既然存在着常量,那么也一定会有变量,变量相对与常量会稍微的复杂一些。常量是那些始终不变的量,那么变量又是什么呢?
例如人的身高、人的体重、人的年龄、各种函数的计算结果都会经常改变的量我们在 Java 程序中称为变量. 上面提到的数据类型拥有定义各种不同类型的变量功能。
2.2 语法结构
下面我们说说定义一个变量的语法格式:
数据类型 变量名 = 初始值;
例如:
int a = 100; // 定义 a 为整型变量,a 就是变量名,这个变量名可以你自己去设置,该变量 a 的值设为 10
double b = 3.14;
char c = 'a';
boolean d = false;
这样就能清楚变量的基本定义的语法了吧(●'◡'●)
2.3 整型变量
2.3.1 整型变量的赋值
方式一:在定义的时候就赋初值
int a = 100;
System.Out.prinfln(a);
方式二:在定义的时候没有赋初值,但是在进行运行操作的之前一定要赋初值(如果在使用之前没有赋值的话运行就会报错)
int b;
b = 100;
System.Out.prinfln(b);
int 变量所能表示范围:
System.out.println(Integer.MAX_VALUE); System.out.println(Integer.MIN_VALUE);
这两行代码可以计算出 int 类型变量的最大值和最小值
最大值:2147483647
最小值:-2147483648
需要在赋值时候注意的是:不能超过其定义的范围,否则的话编译就会报错。
例如:在定义 int 型变量时候,赋值的大小不能超出 int 的范围。
int a = 123456789123456789; // 很显然 int 的赋初值超出了 int 的范围编译会报错
Error:(7, 9) java: 过大的整数: 123456789123456789
总结几点:a) int 不论在何种系统下都是 4 个字节b) 推荐使用方式一定义,如果没有合适的初始值,可以设置为 0c) 在给变量设置初始值时,值不能超过 int 的表示范围,否则会导致溢出d) 变量在使用之前 必须要赋初值, 否则编译报错
(1) 长整型变量int a = 100; // int 定义的整型变量 long b = 100; // long 定义的长整型变量
为了区分 int 和 long 类型定义,一般在 long 定义时候加上 L 或者 l。不过为了区分 l 和 1 一般使用L来区分。
long a = 100L;
同样的,long 定义长整型变量的时候也一定要注意其范围。
System.out.println(Long.MAX_VALUE); System.out.println(Long.MIN_VALUE);
最大值 :9223372036854775807 (-)
最小值 :-9223372036854775808 ( - )
可以看出 long 类型定义的长整型拥有这更大的取值范围。因此可以用来表示 int 所表示不到的数。
注意 :
a) 长整型不论在什么系统中都占 8 个字节
b) 长整型变量赋值后需要加 L / l .推荐 L
(2) 短整型变量
短整型定义:
short a = 10; System.out.println(a);
短整型范围:
System.out.println(Short.MAX_VALUE); System.out.println(Short.MIN_VALUE);
最大值 :32767
最小值 :-32768
注意:
a) short 不论在什么系统下都是 2 个字节
b) short 一般不经常使用,所以还是要之一其范围
2.4 字节型变量
字节型变量的定义:
byte b = 10; System.Out.println(b);
byte 字节型变量所表示范围:
System.out.println(Byte.MAX_VALUE); System.out.println(Byte.MIN_VALUE);
最大值:127
最小值:-128
注意:byte 在任何系统中都是 1 个字节
刚才我们提过了 int、long、short、byte 四种类型,为什么会有这么多不同的类型的存在呢?这就好比我们去买鞋,有的人脚大有的人脚小,鞋合不合脚只有脚知道嘛!这也就是为什么有不同的类型了,为了提高效率不同的情况下用不同的类型。
2.5 浮点型变量
浮点型变量的定义:
浮点型变量也就是用单引号所表示的变量
char a = 'A'; // 定义一个字母变量 char b = '2'; // 定义一个数字变量 System.out.println(a); System.out.println(b); char c = '秀'; // 字符型变量可以存放整型 System.out.println(c);
2.6 布尔型变量
布尔类型用来表示真假,只有两种情况,即 true / false
布尔类型变量的定义:
boolean b = true; // 定义一个布尔类型变量 b 令其初始值为 true System.out.println(b); b = false; System.out.println(b);
注意: Java 中的 boolean 类型和 int 不能相互转换, 即不存在 1 表示 true, 0 表示 false 的用法
总结
这是对之前学习的一个总结,主要介绍了数据类型和基本变量的分类和定义方式,希望对你有所帮助,有什么不足或者纰漏的地方请在评论中指正出来,我会立即进行修改,期待下次和你相遇。也希望可以和你一起提高!