1、基本定义
程序的基本组成单位,相当于内存中一个数据存储空间的表示
三大要素:类型、名称、值
基本原理:指向、内存、地址
使用步骤:声明变量、对变量进行赋值
2、注意事项:
二、数据类型变量表示内存中的存储空间大小,也就是存储区域
变量有自己的变量名和变量类型
变量必须先声明后使用
该变量的值可以在同一类型中不断变化
变量在同一作用域不能重名
变量 = 变量名 + 变量值 + 数据类型。变量三大要素
1、基本概念
基本数据类型和引用数据类型
存储空间不受操作系统的影响
java没有任何无符号类型
java没有内置的字符串类型,而是在标准Java类库中提供了一个预定义类,String
浮点数:存放形式–>浮点数=符号位+指数位+尾数位,小数都是近似值
浮点型常量默认为double,当直接写float f = 1.1,编译会精度损失
表示形式:十进制表示法、科学计数法表示形式,特殊情况,可以将0.123写为.123,5.12e2=512.0(默认double),5.12e-2=0.0512 也就是说,e代表10的次方,正数代表正次方,负数代表负次方
float[4]
double[8]
整数类型:
byte[1]:字节 -128–>127,bit为最小存储单位,byte为基本存储单位,1byte=8bit
short[2]:短整型 -(215)–>215-1
int[4]:整型 -231–>231-1
long[8]:长整型 -263–>263-1
字符类型:
char[2]
布尔值:
boolean[1]
2、char
定义:单个字符,char为两个字节,可以存储汉字
注意:会将对应数字转换为对应编码的字符
使用细节:
使用单引号括起来的单个字符
允许使用转义字符,将’'其后的字符转变为特殊字符型常量
Java中,char本质是一个整数,默认输出时,对应的是unicode码对应的字符;输出数字的话,通过int强转
char可以进行运算,相当于一个整数
ASCII编码表:
a = 97
一个字节表示,共128个字符,实际上一个字节可以表示256个字符,此编码表中仅使用了128个字符
本质:
字符型存储到计算机中,需要将字符对应的码值/整数找出来
字符和码值的对应关系是通过字符编码表决定的
3、常用字符编码表:
ASCII:不能表示所有字符
Unicode:汉字字母统一使用两个字节;unicode码兼容ascii码
utf-8:大小可变编码,字母使用一个字节,汉字使用三个字节
gbk:字母一个字节,汉字两个字节
gbk2312
big5:繁体
4、布尔类型
三、符号的使用boolean:true、false
占用一个字节
适用于逻辑运算
不可以使用0或非0的整数代替false和true
四、Java API+:都是数值,加法运算;一方为字符串,拼接运算;运算顺序从左至右
五、基本数据类型转换Java类的组织形式:jdk下存在很多包
包:接口、类、异常、枚举
类:字段、构造器(构造方法)、成员方法/方法
使用方法:包->类->方法;直接搜索/索引
1、排序
数据类型按精度/容量大小的排序为:
char->int->long->float->double
byte->short->int->long->float->double
2、自动类型转换:
多种类型的数据混合运算时,系统首先自动将所有数据转换成容量最大的那种数据类型,然后再进行运算
当把精度大的数据类型赋值给精度小的数据类型会报错,反之则会进行自动类型转换
byte、short和char直接不会相互自动转换
byte、short、char三者可以计算,计算时首先将类型转换为int类型,不论是否是同类型
boolean不参与转换
自动提升原则:
表达式结果的类型自动提升为操作数中最大的类型
如果按变量赋值,判断类型,按照数值赋值,判断范围再对其进行赋值
3、强制类型转换:
类型转换逆过程,会造成精度降低,数据损失或数据溢出,强制类型转换符()
强制符号只针对最近的操作数有效,往往会使用小括号提升优先级
char类型可以保存int的常量值,但不能保存int的变量值,需要强转
byte和short、char类型进行运算时,当作int类型处理
基本数据类型和字符串之间的转换
基本数据类型–>字符串:+""
字符串–>基本数据类型(包装类):parseXX()方法



