一、增强for循环与可变参数
1.普通遍历(for i循环)
我们遍历数组的时候通过for循环进行遍历;例如下边代码
public class hello {
public static void main(String[] args) {
int[] arr ={2,3,4,5,6};
for (int i=0;i<arr.length;i++){
System.out.println(arr[i]);
}
}
2.增强for循环(foreach)
1.5以后java新增foreach循环和可变参数,可以通过foreach方法进行遍历,通过这种方法遍历更加方便,值得注意的是寻元素的类型需要与遍历集合中的类型保持一致
写法: 数据类型 形参:集合
public class hello {
public static void main(String[] args) {
int[] arr ={2,3,4,5,6};
for (int i:arr){
System.out.println(i);
}
}
3.可变参数:在形参前边加上三个点就是可变参数(就会变为引用数据类型,自动转换为数组)
当我们调用参数的时候传入的参数是变化的不固定的,这是需要我们传入多个数值
public class hello {
public static void main(String[] args) {
method(1,2,3,4);
}
public static void method (int ...a){
for (int i:a){
System.out.println(i);
}
}
}
4.可变参数和多个参数同时作为形参的时候,可变参数必须放在后边
二、数组中要注意的问题
异常会阻止程序执行,除非进行异常处理,异常是单独的线程,区别于主线程的。
1.空指针异常
这样就会报出空指针异常
2.数组越界异常
当我们使用数组[索引]的方式,当索引大于或者等于数组长度的时候就会发生数组越界异常
三、时间复杂度和空间复杂度
1.时间复杂度(从小到大)
当多个时间复杂度同时存在,取最大的时间复杂度
常见的对应复杂度的例子:
2.空间复杂度