一、流程控制
1、顺序结构
switch
语句后面的表达式的数据类型为byte
、short
、char
、int
四种整数类型,jdk1.7之后新增String
类型switch
分支语句中,除了最后的default
,前面case
中的break
不能省略,省略会造成执行符合条件的case和后面的所有case的语句
2、循环语句
break:跳出循环体(后面的循环不执行)
continue:跳过本次循环(本次循环后面的语句不执行)
标签:放在外层循环之前,名称+冒号
-
for
循环语句中,可以使用break
标记跳出外层循环,如下,out就是标记// 外层循环 out: for(int i = 0; i < 4; i++){ // 内存循环 for(int j = 0; j < 4; j++){ break out; } }
-
同样的,在
continue
里,也可以使用标志跳过外层循环,使得i=0
后面的循环次数不执行// 外层循环 out: for(int i = 0; i < 4; i++){ // 内存循环 for(int j = 0; j < 4; j++){ continue out; } }
二、数组类型
1、数组
-
Java的数组所有数组元素具有相同类型(注意,具有父子关系也算,如要求水果类型元素,元素可以是水果和苹果)
-
定义数组,只是定义了一个引用变量,初始化数组,才为数组分配内存空间并为数组元素赋初始值
// 简化的数组定义和静态初始化同时完成, int[] array = {1,2,3,4,5}; // 动态初始化,length为5,int初始值为 0 int [] array2 = new int[5]
2、数组元素系统默认的分配规则
-
数组元素是基本类型时
整数类型(byte、short、int、long),默认值是0
浮点类型(float、double),默认值是0.0
字符类型(char),默认值是 ‘\u000’
布尔类型(boolean),默认值是 false
-
数组元素是引用类型时
引用类型(类,接口,数组),默认值是 null
3、多维数组
本质上还是一维数组,只不过是前一个数组,里面的类型元素为 数组
例如以下代码,就是一个一维数组里,有三个元素,每个元素类型为 int[]
// 同时初始化二维数组的两个维数
int [][] array = new int[3][5]