2016-11-17(4)下午
递归:函数自己调用自己
结束方法的调用: return;
异常:java.lang.StackOverflowError: 表示堆栈溢出,表示代码中存在死循环(函数死循环或类文件死循环)
不能滥用递归,递归是非常消耗内存的
数组:是用于存储一组相同数据类型的容器,是一种引用数据类型
定义数组:
数据类型变量名[] = new 数据类型[空间长度];
数据类型[] 变量名 = new 数据类型[空间长度]; //建议使用
[]是表示维度,一个表示一维 两个表示二维
定义一个用于存储5个整数的一维数组 : int num[] = new int[5];
其他定义赋值数组的方式:(正对一来就直到数据)
1.数据类型变量名[] = new 数据类型[]{值1,值2。。}//数组的长度由值列表的个数决定。
2.数据类型变量名[] = {值1,值2.。。。。}
数组赋值:一般都是通过数组下标来完成。(数组下标是从0开始到长度-1结束)
语法: 变量名[下标] = 值;
获取数组中某个空间的值: 数组[下标]
变量名.length: 用于获取数组长度
遍历数组:度把数组或中的值挨个遍历出来!!!
1. 使用普通for循环
2. 使用foreach循环:最长使用
语法:for(数据类型变量名:数组或集合){
}
Eg: for(int i:num ){
System.out.print(i);
}
每次从数组或集合的第一个数据空间开始尝试获取数据,如果能获取数据就将数据赋值给变量,并返回true,执行大括号中的代码,然后返回尝试从第二个空间获取数据,重复前面的过程直到获取不到数据就返回false,结束for循环。
数组都存在默认值, int类型默认是0,double默认0.0,String默认null