常量:
在程序运行期间,固定不变得量。
常量的分类:
- 字符串常量:凡是用双引号引起来的部分,叫做字符串常量。例如:“abc”、“Hello”、“123”。
- 整数常量:直接写上的数字,没有小数点。例如:100、200、0、-250。
- 浮点数常量:直接写上的数字,有小数点。例如:2.5、-3.14、0.0。
- 字符常量:凡是用单引号引起来的单个字符,就做字符常量。例如:‘A’、‘b’、‘9’、‘中’。
- 布尔常量:只有量中取值。true、false。
- 空常量:null。代表没有任何数据。
注意 :
空常量不能直接用来打印输出
两个单引号中间有且仅有一个字符,没有不行。例如:System.out.println('')
两个单引号中间有且仅有一个字符,有两个不行。例如:System.out.println('AB')
数据类型
数据类型分为基本数据类型和引用数据类型
- 基本数据类型:包括整数、浮点数、字符、布尔。
- 引用数据类型:包括类、数组、接口。
四类八种基本数据类型
注意事项:
- 字符串不是基本类型,而是引用类型。
- 浮点型可能只是一个近似值,并非精确的值。
- 数据范围与字节数不一定相关,例如float数据范围比long更加广泛,但是float是4字节,long是8字节。
- 浮点数当中默认类型是double。如果一定要使用float类型,需要加上一个后缀F。如果是整数,默认为int类型,如果一定要使用long类型,需 要加上一个后缀L。推荐使用大写字母后缀。
变量:
程序运行期间,内容可以发生改变的量
创建一个变量并且使用的格式:
数据类型 变量名称;// 创建一个变量
变量名称 = 数据值;// 赋值,将右边的数据值,赋值交给左边的变量
一步到位的格式:
数据类型 变量名称 = 数据值;// 在创建一个变量的同时,立刻放入指定的数据值;
在使用变量的时候,有哪些注意事项:
- 如果创建多个变量,那么变量之间的名称不可以重复。
- 对于float和long类型来说,字母后缀F和L不要丢掉。
- 如果使用byte或者short类型的变量,那么右侧的数据值不能超过左侧类型的范围。
- 没有进行赋值的变量,不能直接使用;一定要进行赋值之后,才能使用。
- 变量使用不能超过作用域的范围。
【作用域】:从定义变量的一行开始,一直到直接所属的大括号结束为止。
6.可以通过一个语句来创建多个变量,但是一般情况下不推荐这么写。
数据类型转换
当数据类型不一样时,将会发生数据类型的转换。
数据类型分为两类:
自动类型转换(隐式):
1、特点:代码不需要进行特殊处理,自动完成。
2、规则:数据范围从小到大。
例如:long num1=100; 右侧的int(100)类型自动转换为long类型
强制类型转换(显示)
1、特点:代码需要进行特殊的格式处理,不能自动完成。
2、格式:范围小的类型 范围小的变量名 = (范围小的类型) 原本范围大的数据
例如:int num=(int)100L; 将long类型强制转换为int类型,只做一个比喻,范围并未超出
注意事项:
1、强制类型转换一般不推荐使用,因为有可能发生精度损失、数据溢出。(如下图所示)
2、byte、short、char这三种数据类型都可以发生数学运算,例如加法‘+’。
3、byte、short、char这三种类型在运算的时候,都会被首先提升成为in他类型,然后在进行运算。
4、boolear类型不能发生数据的类型转换。
ASCLL码表
数字字符的对照关系表(编码表)
ASCII码表:American Standard Code for Information Interchange,美国信息交换标准代码。
Unicode码表:万国码。也是数字和符号的对照关系,开头0-127部分和ASCII完全一样,但是从128开始包含有更多的字符
这里我们只需要记住常用的三个即可:其余部分查表即可
48代表0
65代表A
97代表a
例如:
char zifu1 = ‘1’; //其实底层保存的是数字48
System.out.println(zifu1 + 0);//49
char zifu2 = ‘A’;
char zifu3 = ‘c’;
int num = zifu3;
//左侧是int类型,右边是char类型
//char => int ,确实是从小到大发生了自动类型转换
System.out.println(num);//99
char zifu4 = ‘中’; //中文也是正确的写法
System.out.println(zifu4 + 0);//20013