Java基础小结.2021.10.10

177 阅读2分钟

1.数组

1.数据可以存储一组连续的元素,数据长度确定后不可以改变。

数组常见的两种声明方式:
    type[] arrName;    //推荐使用
    
    type arrName[];    //从c语言中继承,尽量不要使用

2.数组直接定义后无法直接使用,必须初始化后才可以使用。

数组初始化的方式:
    静态初始化:
        type[] arrName = new type element[]{element1,element2,element3...};
        //简化的形式:
        type[] arrName = {element1,element2,element3...};
        
    动态初始化:
         type[] arrName = new type[arr.length];

3.数组的操作

1.数组的长度:
    arr.length
2.访问数组中存储的数据:
    arrName[i]
3.数组的遍历方法:
    a.普通循环
        for(i = 0, i < arr.lengthi++)
    b.增强for循环
        for(type element: array)   //快捷键iter
    c.Arrays.toString()
4.

2.可变参数

1.可变参数的是指就是数组,所以可以当作数组处理。

可变参数的语法:
    [修饰符列表] 返回值类型 方法名 (形式参数列表,数据类型... 变量名){
    //方法体
    }
可变参数的操作参照数组使用。

3.数组中常见的两个异常

1.数组下标越界异常(ArrayIndexOutOfBoundsException)
    当数组的下标指向一个越界的下表时所报的错误。
2.空指针异常(NullPointerExceptionE)
    空指针异常针对所有引用数据类型,避免空指针异常可以用if判断。

4.Java方法中的传参问题

Java方法中只存在值传递,不存在引用传递,所以方法无法修改基本数据类型的值,在方法中传入引用数据类型时,传入的是引用的地址的拷贝,指向同一个对象,传入基本数据类型时,传入的是值的拷贝,在方法出栈后,就被销毁了。
以上建议结合Java的内存结构分析。

5.二维数组

数据类型[][] 二维数组名;

递归

递归主要需要了解的是递归的思想,递归本质上是方法调用自己,需要设置递归出口,否则会栈溢出,有递归出口时,递归深度过大也会使栈溢出,使用递归需要非常小心。

\