为什么需要变量?
目录
为什么需要变量?
什么是变量?
变量使用
数据类型
整型:
浮点数:
字符型:
Unicode编码表和UTF-8等其他编码表的关系
基本数据类型转换
1、自动类型数据转换:精度小的数据类型会自动转换成精度大的数据类型
2、强制类型数据转换:将容量大的数据类型转换成容量小的数据类型,使用是要加上强制转换符(),但可能会造成精度缺失
基本数据类型和String类型的转换
变量是程序的基本单位
什么是变量?
变量相当于内存中的一个数据存储容器
变量使用
变量必须先声明再使用
变量表示内存中的一个存储区域(不同数据类型的变量,占用的存储空间不同)
该区域有自己的名称[变量名]和类型[数据类型]
变量的含义是,在这个数据类型的存储区域内,数值可以不断变化
变量在同一个作用域内不能重名
(三要素)变量=变量名+值+数据类型
数据类型
Java数据类型有固定的范围和字段长度,不受具体操作系统的限制,保证了Java的可移植性
一个字节8个比特位
整型:
默认int型,当要声明long类型时需要在数值后面加上一个'l'或'L'
当byte、short和char类型在进行计算时会自动转换成int类型
浮点数:
浮点型可以表示小数,浮点数的简单说明:
浮点数=符号位+指数位+尾数位
尾数部分可能丢失,造成精度损失(小数都是近似值)
浮点数的默认值是double,声明float类型时必须要在数值后加上'f'或'F'
浮点数的表示方法:十进制形式、科学计数法
字符型:
字符型可以表示单个字符,字符类型是char,char是两个字节(可以存汉字)
字符型是用单引号('')括起来来的单个字符,char的本质是整数,在输出时,是unicode码对应的字符,所以可以给char类型赋值整数,在输出时会自动转换成unicode所对应的字符,char类型在进行算数运算时相当于整数
Unicode编码表和UTF-8等其他编码表的关系
通俗的来讲,为了使不同国家的汉字都能被计算机表示(不需要装相应的语言插件),全球统一了一个储存所有国家汉字的编码表(unicode编码表),这个编码表中给每一个字符都编写了顺序,可以根据序号在unicode编码表中查看所对应的字符。
虽然unicode编码表规定了全球的汉字,但是他没有给出表达的方式,而UTF-8和其他编码表的作用就是将unicode编码表中的字符表示出来,相当于unicode是一个水果品种,在这个地方的叫法是A,而在另外的一个地方又把它叫B,虽然A和B都是同一个物种,但因为叫法不同,所以会产生误解(乱码问题)
unicode码只在传输过程中使用,但在储存时需要用到其他编码方式
基本数据类型转换
1、自动类型数据转换:精度小的数据类型会自动转换成精度大的数据类型
char->int->long->float->double
byte->short->int->long->float->double
细节:有多中数据类型参与的运算,系统先把所有转换成最大的数据类型,然后再进行运算
byte short和char之间不会相互转换
byte short和char在计算时会转换成int
2、强制类型数据转换:将容量大的数据类型转换成容量小的数据类型,使用是要加上强制转换符(),但可能会造成精度缺失
强制转换符()只对最近的一个数据起作用
char类型可以存储int的常量,若要储存int变量必须要使用强制转化符
基本数据类型和String类型的转换
基本数据类型到String类型:将基本数据类型+" "即可
String类型到基本数据类型:调用parse()方法
例:Double.parse(String) 将字符串转换成double类型,必须全是数字的字符串,否则会报错



