Java数组用法

1,定义数组

(1),动态数组

//动态数组
int[] arryA = new int[300];

(2),静态数组
数据类型[] 数组名称 = 数据类型[] {元素1,元素2.}
使用建议:
如果不确定数组当中的具体内容,用动态初始化;否则已经确定了具体内容,用静态初始化;

int[] arrayA = new int[] {5,15,25};
        int[] m_array;
        m_array = new int[] {10,20,50};
        int[] m_arrayC = {10,20,30};        //静态初始化的省略格式;使用省略格式则不可以再拆分
        String[] arrayB = new String[] {"hello","world","java"};

2,数组的使用

(1),
数组必须进行new初始化才能使用其中的元素
如果只是复制一个null,没有进行new创建
那么会发生
空指针异常

补上就可以
(2),
数组一旦创建,程序运行区间,长度不可改变。

数组练习

数组元素
本来的样子:[1,2,3,4]
之后的样子:[4,3,2,1]

public class Demo04ArrayReverse {
    public static void main(String[] args) {
        int[] array = new int[] {10,20,30,40};
        //遍历打印数组本来的样子
        for(int i = 0; i

(3),数组作方法的返回值
一个方法有0,1,多个返回值,但是只能有0或1一个返回值,不能有多个返回值
如果希望一个方法中产生了 多个结果数据进行返回?
解决方案 使数组作为返回值即可

数组作为方法参数,传进去的是地址值
数组作为方法的返回值,返回的也是地址值

public static int[] calculate(int a, int b, int c){
        int sum = a + b +c;
        int avg = sum / 3;
        //需要一个数组
        //同时返回
       /* int[] array = new int[2];
        array[0] = sum;
        array[1] = avg;
       */
        int[] array = {sum, avg};
        System.out.println("calculate 方法内部是数组是");
        System.out.println(array);//地址值
        return array;
    }

(4),数组可以作为方法的参数
当方法使用的时候,向方法的小括号里进行传参,传进去的其实是地址值

返回值类型,只是打印用void
方法名陈 printArray
参数列表必须给我数组才能打印其中元素,int[] array
 */
    public static void printArray(int[] array){
        System.out.println("printarray方法收到的是地址值");
        System.out.println(array);//地址值
        for(int i = 0; i 

你可能感兴趣的:(Java数组用法)