JAVA基础总结(二)
1.数据类型
(1)数据类型
基本类型:
数值类型
- 整数类型
- byte,占1字节,如byte x = 3
- short,占2字节,如short x = 5
- int,占4字节,如int x = 7
- long,占8字节,如long x = 30L
- 浮点类型
- float,占4字节,如float x = 3.14F
- double,占8字节,如double x = 3.1415926
- 字符类型
- char,占2字节,如char x = ‘王’,char y = ‘a’
- boolean类型
- 占1位(bit),既0.125字节,只有ture和false,既1和0
引用类型:
- 类
- 接口
- 数组
备注:
- 1字节对应8位,既1Byte=8bit,1bit=0.125字节
- 基本类型范围为-2的该类型字节对应位数-1的次方~2的该类型字节对应位数-1的次方-1,既-2(8*n)-1 ~2(8*n)-1 -1,n为该基本类型所占字节数
(2)类型转换
类型转换原因
- 由于JAVA属于强类型语言,所以进行有些运算时,需要用到类型转换
- 运算中,不同类型的数据先转化为同一类型,然后进行运算
强制类型转换
- 基本类型中高容量类型转换为低容量类型,需在需要转换的类型前加上(转换的目的类型),如(int)23.7
- 基本类型与引用类型互相转换,需通过对应的方法进行强制转换
自动类型转换
基本类型中低容量类型转换为高容量类型
备注:
- 不能对布尔值(boolean)进行转换
- 不能把引用类型转换为不相干的类型
- 转换的时候可能存在内存溢出(高容量转换为低容量),或精度问题(浮点型转换为整数型)
- JDK7新特性,数字之间可以用下划线分割
2.变量,常量,作用域
(1)变量
基础知识
- 变量就是可以变化的量
- JAVA是强类型语言,每个变量必须声明其类型
- JAVA变量是程序中最基本的储存单元,其要素包括变量名,变量类型和作用域
类型
- 类变量(需加关键字static),从属于类
- 实例变量,从属于对象,即必须由对象调用,必须声明且不必初始化值,即可默认值
- 局部变量,必须声明并初始化值,作用域只在本方法内
备注:
- 每个变量都有类型,类型即可以是基本类型也可以是引用类型
- 变量名必须是合法的标识符
- 变量声明是一条完整的语句,因此每个声明都必须以分号结束
(2)常量
- 常量(需加关键字final),初始化后不会再改变其值
- 常量可理解为特殊的变量,其值被设定后,在程序运行过程中不允许改变
- 常量名一般使用大写字符
3.运算符
算数运算符
- [+,-,*,/],即加减乘除
- [%],求余,即求余数
- [++],自增,如Y=++X,执行该行代码前,先自增,再给Y赋值; Y=X++,先给Y赋值,执行该行代码后,再自增
- [- -],自减,案例同自增
赋值运算符
- [=]
关系运算符(返回布尔值)
- [>,<],大于;小于
- [>=,<=],大于且等于;小于且等于
- [==],比较左右基本类型变量是否相等
- [!=],不等于
- [instanceof],判断类之间存在继承关系,若存在继承关系则编译成功,且如果实际对象是子类则返回ture,否则返回false
逻辑运算符
- [&&],与
- [||],或
- [!],非
位运算符
以A=0000 1101,B=0011 1100为例:
- [&],A&B,返回0000 1100
- [|],A|B,返回0011 1101
- [^],A ^B,返回0011 0001
- [~], ~B,返回1100 0011,即取反
- [<<],n<<m,变量n左移m位,即n*2m
- [>>],n>>m,变量n右移m为,即n/2m
- [>>>]
条件运算符
- [?:],x?y:z,如果x为ture则返回y,否则返回z
扩展赋值运算符
- [+=],a+=b,如同a=a+b
- [-=],a-=b,如同a=a-b,以下两个同理
- [*=]
- [/=]