一,JDK、JRE、JVM
1)JDK:java开发工具包,是java的核心,包括:JRE+编译、运行等命令工具
2)JRE:java运行环境,是运行java程序所必须的环境集合,包括:JVM+java系统类库
3)JVM:java虚拟机,是java实现跨平台的最核心部分,能够运行java语言所开发的程序
二,八大基本类型
1)byte:字节型,用于存储整数的,占用1个字节,范围-128到127
2)short:短整型,用于存储整数的,占用2个字节,范围-32768到32767
3)int:最常用的整型,用于存储整数的,占用4个字节,范围-2^31到2^31-1
4)long:长整型,用于存储较大的整数,占用8个字节,范围-2^63到2^63-1
5)float:单精度符点数,用于存储小数的,占用4个字节,不能表示精确的值
6)double:双精度符点数,最常用的存储小数的类型,占用8个字节,不能表示精确的值
7)boolean:布尔型,用于存储true或false,占用1个字节
8)char:字符型,采用Unicode字符编码格式,用于存储单个字符,占用2个字节
三,字节换算
1G=1024M(兆)
1M=1024KB(千字节)
1KB=1024B(字节)
1B=8bit(位)
四, 类型间的转换:
数据类型由小到大依次为:byte<short<int<long<float<double
char<
两种方式:
自动/隐式类型转换:小类型到大类型
强制类型转换:大类型到小类型
语法:(要转换成为的数据类型)变量
注意:强转有可能发生溢出或丢失精度
两点规则:
整数直接量可以直接赋值给byte,short,char,但不能超出范围
byte,short,char型数据参与运算时,系统一律将其转换为int再运算
五,运算符
算术:+,-,*,/,%,++,--
关系:>、<、>=、<=、==、!=
逻辑:&&、||、!
赋值:=、+=、-=、*=、/=、%=
字符串连接:+
条件:boolean?数1:数2
六,分支结构
1,基于条件执行
if结构:1条路
if...else结构:2条路
if...else if结构:多条路
2,
switch...case结构:多条路
优点:效率高、结构清晰
缺点:只能对整数判断相等
break:跳出switch
七,循环结构
1,while结构:先判断后执行,有可能一次都不执行
2,do...while结构:先执行后判断,至少执行一次
当第1要素的代码与第3要素的代码相同时,首选do...while
3,for结构:应用率最高,适合与次数相关的
4, 循环三要素
循环变量的初始化
循环的条件(以循环变量为基础)
循环变量的改变
循环变量:在整个循环过程中所反复改变的那个数
八,数组
1,数组是一种引用数据类型,相同数据类型元素的集合
访问:通过(数组名.length)可以获取数组的长度(元素个数)
通过下标/索引来访问元素,下标从0开始,最大到(数组的长度-1)
遍历/迭代:从头到尾挨个走一遍
2,复制,扩容:
System.arraycopy(a,1,b,0,4);
int[] b = Arrays.copyOf(a,6);
a = Arrays.copyOf(a,a.length+1); //数组的扩容