1. 字面常量
常量即程序运行期间,固定不变的量称为常量
2. 数据类型
在Java中数据类型主要分为两类:基本数据类型和引用数据类型。
基本数据类型有四类八种:
1. 四类:整型、浮点型、字符型以及布尔型
2. 八种:
注意:
1、不论是在16位系统还是32位系统,int都占用4个字节,long都占8个字节
2、整形和浮点型都是带有符号的
什么是字节?
字节是计算机中表示空间大小的基本单位。8个bit(位)第一个位为符号位(1表示负数,0表示正),其余7个位为数字位。所以一个字节(byte)所存储的数据范围:-128~+127(-2^7 ~ 2^7-1)
3. 变量
定义变量的语法格式为:
3.1 整型变量
在定义时给出初始值,若在定义时没有给初始值,但使用前必须设置初值
注意事项:
关于在int数据类型中127+1=-128?
1、是计算机的运行法则和存储数据的方式不一样。
2、127+1得到的数值不能放在之前的int里面,要放在新的int里面,故数值为-128。
3.1.1 长整型变量
//eg
long a=100;
long b=100L;
System.out.println(a);
System.out.println(b);
//基本数据类型a与b无区别,在变量能储存的范围内,低精度到高精度会自动转化。
注意事项:
3.1.2 短整型变量
short a = 10;
System.Out.println(a);
注意事项:
1. short在任何系统下都占2个字节
2. short的表示范围为:-32768 ~ 32767
3. short的包装类型为Short
3.1.3 字节型变量
byte b = 10;
System.Out.println(b);
注意事项:
1. byte在任何系统下都占1个字节
2. byte的范围是:-128 ~ 127
3. 字节的包装类型为Byte
3.2 浮点型变量
3.2.1双精度浮点型
double num = 1.1;
System.out.println(num * num);
在 Java 中, int 除以 int 的值仍然是 int(会直接舍弃小数部分)。
注意事项:
1. double在任何系统下都占8个字节
2. 浮点数与整数在内存中的存储方式不同,不能单纯使2^n 的形式来计算
3. double的包装类型为Double
4. 浮点数是个近似值,并不是精确值。
3.3.2 单精度浮点型
float 类型在 Java 中占四个字节.
3.3字符型变量
注意事项:
1. Java 中使用 单引号 + 单个字母 的形式表示字符字面值.
2. 计算机中的字符本质上是一个整数. 在 C 语言中使用 ASCII 表示字符, 而 Java 中使用 Unicode 表示字符. 因此 一个字符占用两个字节, 表示的字符种类更多.
3.4布尔型变量
布尔类型常用来表示真假
注意事项:
3.boolean的包装类型为Boolean。
3.5类型转换
Java 作为一个强类型编程语言, 当不同类型之间的变量相互赋值的时候, 会有教严格的校验.Java中类型转换主要分为两类:自动类型转换(隐 式) 和 强制类型转换(显式)。
3.5.1 自动类型转换(隐式)
自动类型转换特点:数据范围小的转为数 据范围大的时会自动进行。(代码不需要经过任何处理,在代码编译时,编译器会自动进行处理。)
int a = 100;
long b = 10L;
b = a; // a和b都是整形,a的范围小,b的范围大,当将a赋值给b时,编译器会自动将a提升为long类型,然后赋值
a = b; // 编译报错,long的范围比int范围大,会有数据丢失,不安全
3.5.2 强制类型转换(显式)
强制类型转换特点:数据范围大的到数据范围小的。(代码需要经过一定的格式处理,不能自动完成)
int a = 10;
long b = 100L;
b = a; // int-->long,数据范围由小到大,隐式转换
a = (int)b; // long-->int, 数据范围由大到小,需要强转,否则编译失败
4. 字符串类型
在Java中使用String类定义字符串类型。
综上所述,以上内容是本次学习的主要内容,如有不足或异议之处,还望大家指出和讨论。