变量
1. 什么是变量
1.1 定义
用来命名一个数据的标识符
1.2 定义格式
数据类型 变量名;
int year = 2020;
//int 是数据类型,表示是整数
//year 是一个标识符
//= 是赋值操作符
//1949 是一个数字类型的值
1.3 八大基本变量类型
- 整型:byte short int long
- 浮点型:float double
- 字符型:char
- 布尔型:boolean
1.3.1 定义展示
class VariableTest {
public static void main(String[] args) {
/* 整型变量 */
byte byteNumber = 20;
short shortNumber = 200;
int intNumber = 2000;
long longNumber = 20000L;
/* 整型变量展示 */
System.out.println(byteNumber);
System.out.println(shortNumber);
System.out.println(intNumber);
System.out.println(longNumber);
/* 浮点型变量 */
float floatNumber = 6.6F;
double doubleNumber = 6.6;
/* 浮点型变量展示 */
System.out.println(floatNumber);
System.out.println(doubleNumber);
/*
字符型变量
字符常量:
单引号包含的单个元素 'a'
*/
char ch1 = 'z';
char ch2 = '曾';
/* 字符型变量展示 */
System.out.println(ch1);
System.out.println(ch2);
/* 布尔类型 */
boolean ret1 = true;
boolean ret2 = false;
/* 布尔类型变量展示 */
System.out.println(ret1);
System.out.println(ret2);
}
}
1.3.2 变量问题
- 计算机为了保证数据的精度,同时为了数据后期的延展性,会默认把所有的小数都认为是double类型,double占用的内存空间是8字节,而float是4字节,会报错。这里需要告诉计算机3.14是一个float类型,在小数之后加上一个大写F
float floatNumber = 3.14F;
- 给予long类型的数据需要在常量之后加上一个大写L,明确告知计算机这里使用的是一个long类型数据
long longNumber = 40L;
- Java中变量未赋值不能使用:Java中规定,一个变量在没有被赋值的情况下,不能参与除赋值之外的其他任何操作。避免了没有必要的野值问题。
- 未定义不能使用:Java中规定,变量未定义不能使用,必须先定义,后使用
1.4 数据类型转换
不同类型之间的数据可以互相转换,但是要满足一定的规则
精度高的数据类型就像容量大的杯子,可以放更大的数据
精度低的数据类型就像容量小的杯子,只能放更小的数据
小杯子往大杯子里倒东西,大杯子怎么都放得下
大杯子往小杯子里倒东西,有的时候放的下,有的时候就会有溢出
1.4.1 自动类型转换
小数据类型转换到大数据类型
public class HelloWorld {
public static void main(String[] args) {
long l = 50;
int i = 50;
//int比较小,要放进比较大的long,放的进去
l = i;
}
}
1.4.2 强制类型转化
强制类型转换,是从大数据类型到小数据类型的转换过程。
int类型数据保存到byte类型,这里需要强制类型转换
public class Test {
public static void main(String[] args) {
byte b = 5;
int i1 = 10;
int i2 = 300;
b = (byte) i1;
//因为i1的值是在byte范围之内,所以即便进行强制转换
//最后得到的值,也是10
System.out.println(b);
}
}